Part Number Hot Search : 
871AQ 4040D 045280 2SC1418 2222L TS612 LAN9311 6717M7
Product Description
Full Text Search
 

To Download Z8L18220ASC Datasheet File

  If you can't view the Datasheet, Please click here to try to view without PDF Reader .  
 
 


  Datasheet File OCR Text:
  3-1 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 features p reliminary p roduct s pecification n z8s180 mpu - code compatible with zilog z80 ? /z180 ? cpu - extended instructions - operating frequency: 33 mhz/5v or 20 mhz/3.3v - two dma channels - on-chip wait state generators - two uart channels - two 16-bit timer counters - on-chip interrupt controller - on-chip clock oscillator/generator - clocked serial i/o port - fully static - low emi option n two escc ? channels with 32-bit crc n three 8-bit parallel i/o ports n 16550 compatible mimic interface for direct connection to pc, xt, at bus n 100-pin package styles (qfp, vqfp) (0.8 micron cmos 5120 technology) n individual wsg for ramcs and romcs general description the z80182/z8l182 is a smart peripheral controller ic for modem (in particular v. fast applications), fax, voice messaging and other communications applications. it uses the z80180 microprocessor (z8s180 mpu core) linked with two channels of the industry standard z85230 escc (enhanced serial communications controller), 24 bits of parallel i/o, and a 16550 mimic for direct connection to the ibm pc, xt, at bus. the z80182/z8l182 allows complete flexibility for both internal pc and external applications. also current pc modem software compatibility can be maintained with the z80182/z8l182 ability to mimic the 16550 uart chip. the z80180 acts as an interface between the escc ? and 16550 mimic interface when used in internal applications, and between the two escc channels in the external applications. this interface allows data compression and error correction on outgoing and incoming data. in external applications, three 8-bit parallel ports are available for driving leds or other devices. figure 1 shows the z80182/ z8l182 block diagram, while the pin assignments for the qfp and the vqfp packages are shown in figures 2 and 3, respectively. all references in this document to the z80182, or z182 refer to both the z80182 and z8l182. notes: all signals with a preceding front slash, "/", are active low, e.g., b//w (word is active low); /b/w (byte is active low, only). power connections follow conventional descriptions below: connection circuit device power v cc v dd ground gnd v ss z80182/z8l182 z ilog i ntelligent p eripheral c ontroller (zip ? )
3-2 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 general description (continued) z8s180 (static z80180) mpu core address decode 8-bit parallel port c 8-bit parallel port b 8-bit parallel port a 85230 escc channel b mux mux 16550 mimic interface ev1 ev2 d7-d0 control a19-a0 tx data rx data escc control /romcs /ramcs glu logic 85230 escc channel a bus transceiver mux /trxcb 16550 mimic or escc 85230 ch. b and port a 85230 escc ch. a or port c z180 signals or port b note : conventional use of the term "mpu side" refers to all interface through the z180 mpu core and "pc side" refers to all interface through the16550 mimic interface. figure 1. z80182/z8l182 functional block diagram
3-3 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 /trxcb/ha0 txdb//hddis /ctsb//hwr /dcdb//hrd txda /trxca rxda /nmi /reset /busreq /busack extal xtal vss phi /rd /wr /m1 e /mrd//mreq /iorq /rfsh /halt /syncb//hcs /rtxcb/ha2 rxdb/ha1 /wait z80182/z8l182 100-pin qfp /int0 /int1/pc6 /int2/pc7 st a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 vss a13 a14 a15 a16 a17 a18/tout vdd a19 d0 d1 d2 d3 vdd iei /iocs/ieo vss /rtxca /synca/pc4 /dcda/pc0 /ctsa/pc1 /mwr/pc2//rtsa /dtr//reqa/pc3 /w//reqa/pc5 pa7/hd7 pa6/hd6 pa5/hd5 pa4/hd4 pa3/hd3 pa2/hd2 pa1/hd1 pa0/hd0 ev2 ev1 /romcs /ramcs 100 1 95 5 10 15 90 85 80 75 70 65 60 55 50 45 40 35 30 25 20 d4 d5 d6 d7 /rts0/pb0 /cts0/pb1 /dcd0/pb2 txa0/pb3 rxa1/pb6 rxs//cts1/pb7 txs//dtr//reqb//hintr cks//w//reqb//htxrdy /dreq1 vdd /tend1//rtsb//hrxrdy cka1//tend0 rxa0/pb4 txa1/pb5 cka0//dreq0 vss figure 2. z80182/z8l182 100-pin qfp pin configuration
3-4 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 general description (continued) z80182/z8l182 100-pin vqfp ev1 /romcs /ramcs /tend1//rtsb//hrxrdy vdd /dreq1 cks//w//reqb//htxrdy txs//dtr//reqb/hintr cka1//tend0 vss cka0//dreq0 rxs//cts1/pb7 rxa1/pb6 txa1/pb5 rxa0/pb4 txa0/pb3 /dcd0/pb2 /cts0/pb1 /rts0/pb0 d7 d6 d5 d4 d3 d2 125 /ctsb//hwr /dcdb//hrd txda /trxca rxda vdd iei /iocs/ieo vss /rtxca /synca/pc4 /dcda/pc0 /ctsa/pc1 /mwr/pc2//rtsa /dtr//reqa/pc3 /w//reqa/pc5 pa7/hd7 pa6/hd6 pa5/hd5 pa4/hd4 pa3/hd3 pa2/hd2 pa1/hd1 pa0/hd0 ev2 75 51 5 10 15 20 60 70 55 65 st a0 a1 a2 a3 a4 a5 a6 a7 a8 a9 a10 a11 a12 vss a13 a14 a15 a16 a17 a18/tout vdd a19 d0 d1 /syncb//hcs txdb//hddis /trxcb/ha0 rxdb/ha1 /rtxcb/ha2 /halt /rfsh /iorq /mrd//mreq e /m1 /wr /rd phi vss xtal extal /wait /busack /busreq /reset /nmi /int0 /int1/pc6 /int2/pc7 76 100 80 85 90 95 50 26 30 35 40 45 figure 3. z80182/z8l182 100-pin vqfp pin configuration
3-5 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z180 cpu signals a19-a0. address bus (input/output, active high, tri-state). a19-a0 form a 20-bit address bus. the address bus provides the address for memory data bus exchanges up to 1 mbyte, and i/o data bus exchanges up to 64k. the address bus enters a high impedance state during reset and external bus acknowledge cycles, as well as during sleep and halt states. this bus is an input when the external bus master is accessing the on-chip peripherals. address line a18 is multiplexed with the output of prt channel 1 (t out , selected as address output on reset). d7-d0. data bus (bi-directional, active high, tri-state) . d7- d0 constitute an 8-bit bi-directional data bus, used for the transfer of information to and from i/o and memory devices. the data bus enters the high impedance state during reset and external bus acknowledge cycles, as well as during sleep and halt states. /rd. read (input/output, active low, tri-state). /rd indicates that the cpu wants to read data from memory or an i/o device. the addressed i/o or memory device should use this signal to gate data onto the cpu data bus. /wr. write (input/output, active low, tri-state). /wr indicates that the cpu data bus holds valid data to be stored at the addressed i/o or memory location. /iorq. i/o request (input/output, active low, tri-state). /iorq indicates that the address bus contains a valid i/o address for an i/o read or i/o write operation. /iorq is also generated, along with /m1, during the acknowledgment of the /int0 input signal to indicate that an interrupt response vector can be placed onto the data bus. this signal is analogous to the ioe signal of the z64180. /m1. machine cycle 1 (input/output, active low). together with /mreq, /m1 indicates that the current cycle is the opcode fetch cycle of an instruction execution; unless /m1e bit in the omcr is cleared to 0. together with /iorq, /m1 indicates that the current cycle is for an interrupt acknowledge. it is also used with the /halt and st signals to decode status of the cpu machine cycle. this signal is analogous to the /lir signal of the z64180. /mreq. memory request (input/output, active low, tri- state). /mreq indicates that the address bus holds a valid address for a memory read or memory write operation. this signal is analogous to the /me signal of the z64180. /mreq is multiplexed with /mrd on the /mrd//mreq pin. the /mrd//mreq pin is an input during adapter modes; is tri-state during bus acknowledge if the /mreq function is selected; and is inactive high if /mrd function is selected. /mrd. memory read (input/output, active low, tri-state). /mrd is active when both the internal /mreq and /rd are active. /mrd is multiplexed with /mreq on the /mrd //mreq pin. the /mrd//mreq pin is an input during adapter modes; is tri-state during bus acknowledge if /mreq function is selected; and is inactive high if /mrd function is selected. the default function on power up is /mrd and may be changed by programming bit 3 of the interrupt edge/pin mux register (xxdfh). /mwr. memory write (input/output, active low, tri-state). /mwr is active when both the internal /mreq and /wr are active. this /rtsa or pc2 combination is pin multiplexed with /mwr on the /mwr/pc2//rtsa pin. the default function of this pin on power up is /mwr, which may be changed by programming bit 3 in the interrupt edge/pin mux register (xxdfh). /wait. (input/output active low). /wait indicates to the mpu that the addressed memory or i/o devices are not ready for a data transfer. this input is used to induce additional clock cycles into the current machine cycle. the /wait input is sampled on the falling edge of t2 (and subsequent wait states). if the input is sampled low, then additional wait states are inserted until the /wait input is sampled high, at which time execution will continue. /halt. halt/sleep status (input/output, active low). this output is asserted after the cpu has executed either the halt or sleep instruction, and is waiting for either non- maskable or maskable interrupts before operation can resume. it is also used with the /m1 and st signals to decode status of the cpu machine cycle. on exit of halt/ sleep mode, the first instruction fetch can be delayed by 16 clock cycles after the /halt pin goes high, if halt 16 feature is selected. /busack. bus acknowledge (input/output, active low). /busack indicates to the requesting device, the mpu address and data bus, and some control signals, have entered their high impedance state. /busreq. bus request (input, active low). this input is used by external devices (such as dma controllers) to request access to the system bus. this request has a higher priority than /nmi and is always recognized at the end of the current machine cycle. this signal will stop the cpu from executing further instructions and places the address/data buses and other control signals, into the high impedance state.
3-6 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z180 cpu signals (continued) /nmi. non-maskable interrupt (input, negative edge triggered). /nmi has a higher priority than /int and is always recognized at the end of an instruction, regardless of the state of the interrupt enable flip-flops. this signal forces cpu execution to continue at location 0066h. /int0. maskable interrupt request 0 (input/output active low). this signal is generated by external i/o devices. the cpu will honor this request at the end of the current instruction cycle as long as the /nmi and /busreq signals are inactive. the cpu acknowledges this interrupt request with an interrupt acknowledge cycle. during this cycle, both the /m1 and /iorq signals become active. the internal z180 mpus /int0 source is: /int0 or escc or the mimic. this input is level triggered. /int0 is an open-drain output, so you can connect other open-drain interrupts onto the circuit in addition to haveing a pull-up to vcc. /int1, /int2. maskable interrupt requests 1 and 2 (inputs, active low). this signal is generated by external i/o devices. the cpu will honor these requests at the end of the current instruction cycle as long as the /nmi, /busreq, and /int0 signals are inactive. the cpu acknowledges these interrupt requests with an interrupt acknowledge cycle. unlike the acknowledgment for /int0, during this cycle neither the /m1 or /iorq signals become active. these pins may be programmed to provide an active low level on rising or falling edge interrupts. the level of the external /int1 and /int2 pins may be read through bits pc6 and pc7 of parallel port c. pin /int1/pc6 multiplexes /int1 and pc6. pin /int2/pc7 multiplexes /int2 and pc7. /rfsh. refresh (input/output, active low, tri-state). together with /mreq, /rfsh indicates that the current cpu machine cycle and the contents of the address bus should be used for refresh of dynamic memories. the low order 8 bits of the address bus (a7-a0) contain the refresh address. this signal is analogous to the /ref signal of the z64180. z180 mpu uart and sio signals cka0, cka1. asynchronous clocks 0 and 1 (bi-directional, active high). these pins are the transmit and receive clocks for the synchronous channels. cka0 is multiplexed with /dreq0 on the cka0//dreq0 pin. cka1 is multiplexed with /tend0 on the cka1//tend0 pin. cks. serial clock (bi-directional, active high). this line is clock for the csio channel and is multiplexed with the escc signal (/w//reqb) and the 16550 mimic interface signal /htxrdy on the cks//w//reqb//htxrdy pin. /dcd0. data carrier detect 0 (input, active low). this is a programmable modem control signal for asci channel 0. /dcd0 is multiplexed with the pb2 (parallel port b, bit 2) on the /dcd0/pb2 pin. /rts0. request to send 0 (output, active low). this is a programmable modem control signal for asci channel 0. this pin is multiplexed with pb0 (parallel port b, bit 0) on the /rts0/pb0 pin. /cts0. clear to send 0 (input, active low). this line is a modem control signal for the asci channel 0. this pin is multiplexed with pb1 (parallel port b, bit 1) on the /cts0 /pb1 pin. txa0. transmit data 0 (output, active high). this signal is the transmitted data from the asci channel 0. this pin is multiplexed with pb3 (parallel port b, bit 3) on the txa0/pb3 pin. txs. clocked serial transmit data (output, active high) . this line is the transmitted data from the csio channel. txs is multiplexed with the escc signal (/dtr//reqb) and the 16550 mimic interface signal hintr on the txs//dtr //reqb//hintr pin. rxa0. receive data 0 (input, active high). this signal is the receive data to asci channel 0. this pin is multiplexed with pb4 (parallel port b, bit 4) on the rxa0/pb4. rxs. clocked serial receive data (input, active high). this line is the receive data for the csio channel. rxs is multiplexed with the /cts1 signal for asci channel 1 and with pb7 (parallel port b, bit 7) on the rxs//cts1/pb7 pin. rxa1. received data asci channel 1 (input, active high). this pin is multiplexed with pb6 (parallel port b, bit 6) on the rxa1/pb6 pin. txa1. transmitted data asci channel 1 (output, active high). this pin is multiplexed with pb5 (parallel port b, bit 5) on the txa1/pb5 pin.
3-7 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z180 mpu dma signals /tend0. transfer end 0 (output, active low). this output is asserted active during the last write cycle of a dma operation. it is used to indicate the end of the block transfer. /tend0 is multiplexed with cka1 on the cka1//tend0 pin. /tend1. transfer end 1 (output, active low). this output is asserted active during the last write cycle of a dma operation. it is used to indicate the end of the block transfer. /tend1 is multiplexed with the escc signal /rtsb and the 16550 mimic interface signal /hrxrdy on the /tend1//rtsb//hrxrdy pin. /dreq0. dma request 0 (input, active low). /dreq0 is used to request a dma transfer from dma channel 0. the dma channel monitors the input to determine when an external device is ready for a read or write operation. this input can be programmed to be either level or edge sensed. /dreq0 is multiplexed with cka0 on the cka0//dreq0 pin. /dreq1. dma request 1 (input, active low). /dreq1 is used to request a dma transfer from dma channel 1. the dma channel monitors the input to determine when an external device is ready for a read or write operation. this input can be programmed to be either level or edge sensed. z85230 escc ? signals txda. transmit data (output, active high). this output signal transmits channel as serial data at standard ttl levels. this output can be tri-stated during power down modes. txdb. transmit data (output, active high). this output signal transmits channel bs serial data at standard ttl levels. in z80182/z8l182 mode 1, txdb is multiplexed with the 16550 mimic interface /hddis signal on the txdb//hddis pin. rxda. receive data (inputs, active high). these inputs receive channel as serial data at standard ttl levels. rxdb. receive data (input, active high). these inputs receive channel bs serial data at standard ttl levels. in z80182/z8l182 mode 1 rxdb is multiplexed with the 16550 mimic ha1 input on the rxdb/ha1 pin. /trxca. transmit/receive clock (input or output, active low). the functions of this pin are under channel a program control. /trxca may supply the receive clock or the transmit clock in the input mode or supply the output of the digital phase-locked loop, the crystal oscillator, the baud rate generator, or the transmit clock in the output mode. /trxcb. transmit/receive clock (input or output, active low). the functions of this pin are under channel b program control. /trxcb may supply the receive clock or the transmit clock in the input mode or supply the output of the digital phase-locked loop (dpll), the crystal oscillator, the baud rate generator, or the transmit clock in output mode. in z80182/z8l182 mode 1 /trxcb is multiplexed with the 16550 mimic interface ha0 input on the /trxcb/ha0 pin. /rtxca. receive/transmit clock (input, active low). the functions of this pin are under channel a program control. in channel a, /rtxca may supply the receive clock, the transmit clock, the clock for the baud rate generator, or the clock for the dpll. this pin can also be programmed for use by the /synca pin as a crystal oscillator. the receive clock may be 1, 16, 32, or 64 times the data rate in asynchronous mode. /rtxcb. receive/transmit clock (input, active low). the functions of this pin are under channel b program control. in channel b, /rtxcb may supply the receive clock, the transmit clock, the clock for the baud rate generator, or the clock for the dpll. this pin can also be programmed for use by the /syncb pin as a crystal oscillator. the receive clock may be 1, 16, 32, or 64 times the data rate in asynchronous mode. in z80182/z8l182 mode 1 the /rtxcb signal is multiplexed with 16550 mimic interface ha2 input on the /rtxcb/ha2 pin. z180 ? mpu timer signals t out. timer out (output, active high). t out is the pulse output from prt channel 1. this line is multiplexed with a18 of the address bus on the a18/t out pin.
3-8 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z85230 escc signals (continued) /synca, /syncb. synchronization (inputs/outputs, active low). these pins can act as either inputs, outputs, or as part of the crystal oscillator circuit. in the asynchronous receive mode (crystal oscillator option not selected), these pins are inputs similar to /cts and /dcd. in this mode, transitions on these lines affect the state of the sync /hunt status bits in read register 0, but have no other function. /synca is also multiplexed with pc4 (parallel port c, bit 4) on the /synca/pc4 pin. in external synchronization mode with the crystal oscillator not selected, these lines also act as inputs. in this mode /sync must be driven low two receive clock cycles after the last bit in the sync character is received. character assembly begins on the rising edge of the receive clock immediately preceding the activation of /sync. in the internal synchronization mode, (monosync and bisync) with the crystal oscillator not selected, these pins act as outputs and are active only during the part of the receive clock cycle in which sync characters are recognized. the sync condition is not latched, so these outputs are active each time a sync character is recognized (regardless of the character boundaries). in sdlc mode, these pins act as outputs and are valid on receipt of a flag. in z80182/z8l182 mode 1 the /syncb signal is multiplexed with the 16550 mimic interface /hcs input on the /syncb //hcs pin. /ctsa. clear to send (input, active low). if this pin is programmed as auto enable, a low on this input enables the channel a transmitter. if not programmed as auto enable, it may be used as a general-purpose input. the input is schmitt-trigger buffered to accommodate slow rise-time input. the escc ? detects transitions on this input and can interrupt the z180 ? mpu on either logic level transitions. /ctsa is multiplexed with pc1 (parallel port c, bit 1) on the /ctsa/pc1 pin. /ctsb. clear to send (input, active low). this pin is similar to /ctsas functionality but is applicable to the channel b transmitter. in z80182/z8l182 mode, the /ctsb signal is multiplexed with the 16550 mimic interface /hwr input on the /ctsb //hwr pin. /dcda. data carrier detect (input, active low). this pin functions as receiver enables if it is programmed as an auto enable bit; otherwise, it may be used as a general- purpose input pin. the pin is schmitt-trigger buffered to accommodate slow rise-time signals. the escc detects transitions on this pin and can interrupt the z180 mpu on either logic level transitions. /dcda is also multiplexed with pc0 (parallel port c, bit 0) on the /dcda/pc0 pin. /dcdb. data carrier detect (input, active low). this pins functionality is similar to /dcda but applicable to the channel b receiver. in z80182/z8l182 mode 1, /dcdb is multiplexed with the 16550 mimic interface /hrd input on the /dcdb//hrd pin. /rtsa. request to send (output, active low). when the request to send (rts) bit in write register 5 channel a is set, the /rtsa signal goes low. when the rts bit is reset in the asynchronous mode and auto enables is on, the signal goes high after the transmitter is empty. in synchronous mode or in asynchronous mode with auto enables off, the /rtsa pin strictly follows the state of the rts bit. the pin can be used as general-purpose output. /rtsa is multiplexed with pc2 (parallel port c bit 2). this /rtsa or pc2 combination is pin multiplexed with /mwr (active when both the internal /mreq and /wr are active) on the /mwr/pc2//rtsa pin. the default function of this pin on power-up is /mwr which may be changed by programming bit 3 in the interrupt edge/pin mux register (xxdfh). /rtsb. request to send (output, active low). this pin is similar in functionality as /rtsa but is applicable on channel b. the /rtsb signal is multiplexed with the z180 mpu /tend1 signal and the 16550 mimic interface /hrxrdy signal on the /tend1//rtsb//hrxrdy pin. /dtr//reqa. data terminal ready (output, active low). this pin functions as it is programmed into the dtr bit. it can also be used as general-purpose output (transmit) or as request lines for the dma controller. the escc allows full duplex dma transfers. /dtr//reqa is also multiplexed with pc3 (parallel port c, bit 3) on the /dtr//reqa /pc3 pin. /dtr//reqb. data terminal ready (output, active low). this pin functions as it is programmed into the dtr bit. it can also be used as general-purpose output (transmit) or as request lines for the dma controller. the escc allows full duplex dma transfers. the /dtr//reqb signal is multiplexed with the z180 mpu txs signal and the 16550 mimic interface hintr signal on the /txs//dtr//reqb //hintr pin. /w//reqa. wait/request (output, open drain when programmed for the wait function, driven high or low when programmed for a request function). this dual- purpose output can be programmed as request (receive) lines for a dma controller or as wait lines to synchronize the z180 mpu to the escc data rate. the reset state is wait. the escc allows full duplex dma transfers. /w//reqa is also multiplexed with pc5 (parallel port c, bit 5) on the /w//reqa/pc5 pin.
3-9 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 /w//reqb. wait/request (output, open drain when programmed for the wait function, driven high or low when programmed for a request function). this pin is similar in functionality to /w//reqa but is applicable on channel b. the /w//reqb signal is multiplexed with the z180 mpu cks signal and the 16550 mimic interface /htxrdy signal on the cks//w//reqb//htxrdy pin. 16550 mimic interface signals hd7-hd0. host data bus (input/output, tri-state). in z80182/ z8l182 mode 1, the host data bus is used to communicate between the 16550 mimic interface and the pc/xt/at. it is multiplexed with the pa7-pa0 of parallel port a when the z80182/z8l182 is in mode 0. /hddis. host driver disable (output, active low). in z80182/ z8l182 mode 1, this signal goes low whenever the pc/xt/at is reading data from the 16550 mimic interface. in z80182/z8l182 mode 0, this pin is multiplexed with the escc ? txdb signal on the txdb//hddis pin. ha2-ha0. host address (input). in z80182/z8l182 mode 1, these pins are the address inputs to the 16550 mimic interface. this address determines which register the pc/xt/at accesses. ha0 is multiplexed with /trxcb on the /trxcb/ha0 pin; ha1 is multiplexed with rxdb on the rxdb/ha1 pin; ha2 is multiplexed with /rtxcb on the /rtxcb/ha2 pin. /hcs. host chip select (input, active low). in z80182/ z8l182 mode 1, this input is used by the pc/xt/at to select the 16550 mimic interface for an access. in z80182/ z8l182 mode 0, it is multiplexed with the escc /syncb signal on the syncb//hcs pin. /hwr. host write (input, active low). in z80182/z8l182 mode 1, this input is used by the pc/xt/at to signal the 16550 mimic interface that a write operation is taking place. in z80182/z8l182 mode 0, this input is multiplexed with the escc /ctsb signal on the /ctsb//hwr pin. /hrd. host read (input, active low). in z80182/z8l182 mode 1, this input is used by the pc/xt/at to signal the 16550 mimic interface that a read operation is taking place. in z80182/z8l182 mode 0, this pin is multiplexed with the escc /dcdb signal on the /dcdb//hrd pin. hintr. host interrupt (output, active high). in z80182/ z8l182 mode 1, this output is used by the 16550 mimic interface to signal the pc/xt/at that an interrupt is pending. in z80182/z8l182 mode 0, this pin is multiplexed with the escc (/dtr//reqb) signal and the z180 mpu txs signal on the txs//dtr//reqb//hintr pin. /htxrdy. host transmit ready (output, active low). in z80182/z8l182 mode 1, this output is used by the 16550 mimic in dma mode to signal the pc/xt/at that the transmit holding register is empty. in z80182/z8l182 mode 0, this pin is multiplexed with the escc (/w//reqb) signal and the z180 mpu cks signal on the cks//w// reqb//htxrdy pin. /hrxrdy. host receive ready (output, active low). in z80182/z8l182 mode 1, this output is used by the 16550 mimic interface in dma mode to signal the pc/xt/at that a data byte is ready in the receive buffer. in z80182/ z8l182 mode 0, this pin is multiplexed with the escc /rtsb signal and the z180 mpu /tend1 signal on the /tend1/rtsb /hrxrdy pin. pa7-pa0. parallel port a (input/output). these lines can be configured as inputs or outputs on a bit-by-bit basis when the z80182/z8l182 is operated in mode 0. these pins are multiplexed with the hd7-hd0 when the z80182/z8l182 is in mode 1. pb7-pb0. parallel port b (input/output). these lines can be configured as inputs or outputs on a bit-by-bit basis when the port function is selected in the system configuration register. the pins are multiplexed with the following z180 peripheral functions: /rts0, /cts0, /dcd0, txa0, rxa0, txa1, rxa1, (rxs//cts1). pc7-pc0. parallel port c (input/output). these lines can be configured as inputs or outputs on a bit-by-bit basis for bits pc5-pc0. bits pc7 and pc6 are input only and read the level of the external /int2 and /int1 pins. when /int2 and/or /int1 are in edge capture mode, writing a 1 to the respective pc7, pc6 bit clears the interrupt capture latch; writing a 0 has no effect. bits pc5-pc0 are multiplexed with the following pins from escc channel a: (/w//reqa), /synca, (/dtr//reqa), /rtsa, /mwr, /ctsa, /dcda. the port function is selected through a bit in the system configuration register. parallel ports
3-10 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 emulation signals ev1, ev2. emulation select (input). these two pins determine the emulation mode of the z180 mpu (table 1). table 1. evaluation modes mode ev2 ev1 description 0 0 0 normal mode, on-chip z180 bus master 1 0 1 emulation adapter mode 2 1 0 emulator probe mode 3 1 1 reserved for test system control signals st. status (output, active high). this signal is used with the /m1 and /halt output to decode the status of the cpu machine cycle. if unused, this pin should be pulled to v dd . /reset. reset signal (input, active low) . /reset signal is used for initializing the mpu and other devices in the system. it must be kept in the active state for a period of at least three system clock cycles. iei. interrupt enable signal (input, active high). iei is used with the ieo to form a priority daisy chain when there is more than one interrupt-driven peripheral. ieo. interrupt enable output signal (output, active high). in the daisy-chain interrupt control, ieo controls the interrupt of external peripherals. ieo is active when iei is 1 and the cpu is not servicing an interrupt from the on-chip peripherals. this pin is multiplexed with /iocs on the /iocs/ieo pin. the /iocs function is the default on power on or reset conditions and is changed by programming bit 2 in the interrupt edge/pin mux register. /iocs. auxiliary chip select output signal (output, active low). this pin is multiplexed with /ieo on the /iocs/ieo pin. /iocs is an auxiliary chip select that decodes a7, a6, /iorq, /m1 and effectively decodes the address space xx80h to xxbfh for i/o transactions. a15 through a8 are not decoded so that the chip select is active in all pages of i/o address space. the /iocs function is the default on the /iocs/ieo pin after power on or reset conditions and is changed by programming bit 2 in the interrupt edge/pin mux register. /ramcs. ram chip select (output, active low) . signal used to access ram based upon the address and the ramlbr and ramubr registers and /mreq. /romcs. rom chip select (output, active low). signal used to access rom based upon the address and the rombr register and /mreq. e. enable clock (output, active high). synchronous machine cycle clock output during bus transactions. xtal. crystal (input, active high). crystal oscillator connection. this pin should be left open if an external clock is used instead of a crystal. the oscillator input is not a ttl level (reference dc characteristics). extal. external clock/crystal (input, active high). crystal oscillator connections to an external clock can be input to the z80180 on this pin when a crystal is not used. this input is schmitt triggered. phi. system clock (output, active high). the output is used as a reference clock for the mpu and the external system. the frequency of this output is reflective of the functional speed of the processor. in clock divide-by-two mode, the phi frequency is half that of the crystal or input clock. if divide-by-one mode is enabled, the phi frequency is equivalent to that of crystal or input frequency. the phi frequency is also fed to the escc core. if running over 20 mhz (5v) or 10 mhz (3v) the phi-escc frequency divider should be enabled to divide the phi clock by two prior to feeding into the escc core.
3-11 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 multiplexed pin descriptions a18/t out. during reset, this pin is initialized as an a18 pin. if either toc1 or toc0 bit of the timer control register (tcr) is set to 1, the t out function is selected. if toc1 and toc0 bits are cleared to 0, the a18 function is selected. in normal user mode (on-chip bus master), the a18 signal for the chip select logic is obtained from the cpu before the external pin is muxed as a18/t out . therefore, the selection of t out will not affect the operation of the 182 chip select logic. however, in adapter mode (off-chip bus master), the a18 signal must be provided by the external bus master. cka0//dreq0. during reset, this pin is initialized as cka0 pin. if either dm1 or sm1 in the dma mode register (dmode) is set to 1, /dreq0 function is always selected. cka1//tend0. during reset, this pin is initialized as cka1 pin. if cka1d bit in the asci control register ch1(cntla1) is set to 1, /tend0 function is selected. if cka1d bit is set to 0, cka1 function is selected. rxs//cts1. during reset, this pin is initialized as the rxs pin. if cts1e bit in the asci status register ch1 (stat1) is set to 1, /cts1 function is selected. if cts1e bit is set to 0, rxs function is selected. this pin is also multiplexed with pb7 based on bit 6 in the system configuration register. the pins below are triple-multiplexed based upon the values of bit 1 and bit 2 of the system configuration register. the pins are configured as table 2 specifies. on reset, both bits 1 and 2 are 0, so /tend1,txs,cks are selected. table 2. triple multiplexed pins bit 1 bit 2 master configuration register 0 0 /tend1,txs,cks 0 1 /rtsb,/dtr//reqb,/w//reqb 1 0 /tend1,txs,cks 1 1 /hrxrdy,//htxrdy,hintr the pins below are multiplexed based upon the value of bit 1 of the system configuration register. if bit 1 is 0, then the z80182/z8l182 mode 0 (non-16550 mimic mode) signals are selected; if bit 1 is 1, then z80182/z8l182 mode 1 (16550 mimic mode) signals are selected. on reset, z80182/z8l182 mode 0 is always selected as shown in table 3. table 3. mode 0 and mode 1 multiplexed pins z80182/z8l182 z80182/z8l182 mode 0 mode 1 txdb /hddis rxdb ha1 /trxcb ha0 /rtxcb ha2 /syncb /hcs /ctsb /hwr /dcdb /hrd pa7-pa0 hd7-hd0
3-12 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 ports b and c multiplexed pin descriptions ports b and c are pin multiplexed with the z180 asci functions and part of escc channel a. the mux function is controlled by bits 7-5 in the system configuration register. the mux is organized as shown in table 4. table 4. multiplexed port pins port mode asci/escc mode function function pb7 rxs,/cts1 pb6 select with bit 6=1 rxa1 pb5 system config reg. txa1 pb4 rxa0 pb3 txa0 pb2 select with bit 5=1 /dcd0 pb1 system config reg. /cts0 (note 1) pb0 /rts0 pc7 always reads /int2 ext. status pc6 always reads /int1 ext. status pc5 /w//reqa pc4 /synca pc3 select with bit 7=1 /dtr//reqa pc2 system config reg. /rtsa (note 2) pc1 /ctsa pc0 /dcda note 1: when the port function (pb1) is selected, the internal z180/ cts0 is always driven low. this ensures that the asci channel 0 of the z180 ? mpu is enabled to transmit data. note 2: interrupt edge /pin mux register, bit 3 chooses between the /mwr or pc2//rtsa combination; the system configuration register bit 7 chooses between pc2 and /rtsa. refer to table 5 for the 1st, 2nd and 3rd pin functions.
3-13 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 table 5. primary, secondary and tertiary pin functions pin number 1st 2nd 3rd mux vqfp qfp function function function control 14 st 25 a0 36 a1 47 a2 58 a3 69 a4 710a5 811a6 912a7 10 13 a8 11 14 a9 12 15 a10 13 16 a11 14 17 a12 15 18 v ss 16 19 a13 17 20 a14 18 21 a15 19 22 a16 20 23 a17 21 24 a18/t out 22 25 v dd 23 26 a19 24 27 d0 25 28 d1 26 29 d2 27 30 d3 28 31 d4 29 32 d5 30 33 d6 31 34 d7 32 35 /rts0 pb0 sys conf reg bit 5 33 36 /cts0 pb1 sys conf reg bit 5 34 37 /dcd0 pb2 sys conf reg bit 5 35 38 txa0 pb3 sys conf reg bit 5 36 39 rxa0 pb4 sys conf reg bit 5 37 40 txa1 pb5 sys conf reg bit 6 38 41 rxa1 pb6 sys conf reg bit 6 39 42 rxs//cts1 pb7 sys conf reg bit 6 40 43 cka0//dreq0
3-14 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 multiplexed pin descriptions (continued) table 5. primary, secondary and tertiary pin functions (continued) pin number 1st 2nd 3rd mux vqfp qfp function function function control 41 44 v ss 42 45 cka1//tend0 43 46 txs /dtr//reqb hintr sys conf reg bit 1,2 44 47 cks /w//reqb /htxrdy sys conf reg bit 1,2 45 48 /dreq1 46 49 v dd 47 50 /tend1 /rtsb /hrxrdy sys conf reg bit 1,2 48 51 /ramcs 49 52 /romcs 50 53 ev1 51 54 ev2 52 55 pa0 hd0 sys conf reg bit 1 53 56 pa1 hd1 sys conf reg bit 1 54 57 pa2 hd2 sys conf reg bit 1 55 58 pa3 hd3 sys conf reg bit 1 56 59 pa4 hd4 sys conf reg bit 1 57 60 pa5 hd5 sys conf reg bit 1 58 61 pa6 hd6 sys conf reg bit 1 59 62 pa7 hd7 sys conf reg bit 1 60 63 /w//reqa pc5 sys conf reg bit 7 61 64 /dtr//reqa pc3 sys conf reg bit 7 62 65 /mwr pc2 rtsa sys conf reg bit 7 * 63 66 /ctsa pc1 sys conf reg bit 7 64 67 /dcda pc0 sys conf reg bit 7 65 68 /synca pc4 sys conf reg bit 7 66 69 /rtxca 67 70 v ss 68 71 /iocs ieo int edg/pin reg bit 2 69 72 iei 70 73 v dd
3-15 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 table 5. primary, secondary and tertiary pin functions (continued) pin number 1st 2nd 3rd mux vqfp qfp function function function control 71 74 rxda 72 75 /trxca 73 76 txda 74 77 /dcdb /hrd sys conf reg bit 1 75 78 /ctsb /hwr sys conf reg bit 1 76 79 txdb /hddis sys conf reg bit 1 77 80 /trxcb ha0 sys conf reg bit 1 78 81 rxdb ha1 sys conf reg bit 1 79 82 /rtxcb ha2 sys conf reg bit 1 80 83 /syncb /hcs sys conf reg bit 1 81 84 /halt 82 85 /rfsh 83 86 /iorq 84 87 /mrd /mreq int edg/pin reg bit 3 85 88 e 86 89 /m1 87 90 /wr 88 91 /rd 89 92 phi 90 93 v ss 91 94 xtal 92 95 extal 93 96 /wait 94 97 /busack 95 98 /busreq 96 99 /reset 97 100 /nmi 98 1 /int0 99 2 /int1 pc6** 100 3 /int2 pc7** notes: * also controlled by interrupt edge/pin mux register ** pc7 and pc6 are inputs only and can read values of /int1 and /int2.
3-16 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 product specification/technical manuals of each discrete product. the following subsections describe each of the individual units of the z182. z80182/z8l182 functional description functionally, the on-chip z182 mpu and escc ? are the same as the discrete devices (figure 1). therefore, for a detailed description of each individual unit, refer to the z182 mpu functional description this unit provides all the capabilities and pins of the zilog z8s180 mpu (static z80180 mpu). figure 4 shows the s180 mpu block diagram of the z182. this allows 100% software compatibility with existing z180 ? (and z80 ? ) software. the following is an overview of the major functional units of the z182. timing & clock generator bus state control interrupt cpu dmacs (2) 16-bit programmable reload timers (2) clocked serial i/o port asynchronous sci (channel 0) asynchronous sci (channel 1) mmu data bus (8-bit) address bus (16-bit) /dreq1 /tend txa0 cka0 /dreq0 rxa0 /rts0 /cts0 /dcd0 txa1 cka1 /tend0 rxa1 a18 /tout txs rxs//cts cks xtal extal /reset /rd /wr /m1 /mreq /iorq /halt /wait /busreq /busack /rfsh st e /nmi /int0 /int1 /int2 a19-a0 d7-d0 figure 4. s180 mpu block diagram of z182
3-17 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z182 cpu the z182 cpu is 100% software compatible with the z80 ? cpu and has the following additional features: faster execution speed. the z182 cpu is fine tuned, making execution speed, on average, 10% to 20% faster than the z80 cpu. enhanced dram refresh circuit. z182 cpus dram refresh circuit does periodic refresh and generates an 8-bit refresh address. it can be disabled or the refresh period adjusted, through software control. enhanced instruction set. the z182 cpu has seven additional instructions to those of the z80 cpu, which include the mlt (multiply) instruction. halt and low power modes of operation. the z182 cpu has halt and low power modes of operation, which are ideal for the applications requiring low power consumption like battery operated portable terminals. system stop mode. when the z182 is in system stop mode, it is only the z180 mpu that is in stop mode. standby and idle mode. please refer to the z8s180 product specification for additional information on these two additional low power modes. instruction set. the instruction set of the z182 cpu is identical to the z180. for more details about each transaction, please refer to the product specification/ technical manual for the z180/z80 cpu. z182 cpu basic operation z182 cpus basic operation consists of the following events. these are identical to the z180 mpu. for more details about each operation, please refer to the product specification/technical manual for the z180. n operation code fetch cycle n memory read/write operation n input/output operation n bus request/acknowledge operation n maskable interrupt request operation n trap and non-maskable interrupt request operation n halt and low power modes of operation n reset operation memory management unit (mmu) the memory management unit (mmu) allows the user to map the memory used by the cpu (64 kbytes of logical addressing space) into 1 mbyte of physical addressing space. the organization of the mmu allows object code compatibility with the z80 cpu while offering access to an extended memory space. this is accomplished by using an effective common area-banked area scheme. dma controller the z182 mpu has two dma controllers. each dma controller provides high-speed data transfers between memory and i/o devices. transfer operations supported are memory-to-memory, memory-to/from-i/o, and i/o-to- i/o. transfer modes supported are request, burst, and cycle steal. the dma can access the full 1 mbytes addressing range with a block length up to 64 kbytes and can cross over 64k boundaries. asynchronous serial communication interface (asci) this unit provides two individual full-duplex uarts. each channel includes a programmable baud rate generator and modem control signals. the asci channels also support a multiprocessor communication format. programmable reload timer (prt) the z182 mpu has two separate programmable reload timers, each containing a 16-bit counter (timer) and count reload register. the time base for the counters is system clock divided by 20. prt channel 1 provides an optional output to allow for waveform generation. clocked serial i/o (csi/o) the csi/o channel provides a half-duplex serial transmitter and receiver. this channel can be used for simple high- speed data connection to another cpu or mpu. programmable wait state generator to ease interfacing with slow memory and i/o devices, the z182 mpu unit has a programmable wait state generator. by programming the dma/wait control register (dcntl), up to three wait states are automatically inserted in memory and i/o cycles. this unit also inserts wait states during on- chip dma transactions. when using ramcs and romcs wait state generators, the wait state controller with the most programmed wait states will determine the number of wait states inserted.
3-18 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z85230 escc ? functional description the zilog enhanced serial communication controller escc ? is a dual channel, multiprotocol data communication peripheral. the escc functions as a serial-to-parallel, parallel-to-serial converter/controller. the escc can be software-configured to satisfy a wide variety of serial communications applications. the device contains a variety of new, sophisticated internal functions including on-chip baud rate generators, digital phase-lock loops, and crystal oscillators, which dramatically reduce the need for external logic. the escc handles asynchronous formats, synchronous byte-oriented protocols such as ibm ? bisync, and synchronous bit-oriented protocols such as hdlc and ibm sdlc. this versatile device supports virtually any serial data transfer application (telecommunication, lan, etc.) the device can generate and check crc codes in any synchronous mode and can be programmed to check data integrity in various modes. the escc also has facilities for modem control in both channels in applications where these controls are not needed, the modem controls can be used for general-purpose i/o. with access to 14 write registers and 7 read registers per channel (number of the registers varies depending on the version), the user can configure the escc to handle all synchronous formats regardless of data size, number of stop bits, or parity requirements. the escc also accommodates all synchronous formats including character, byte, and bit-oriented protocols. within each operating mode, the escc also allows for protocol variations by checking odd or even parity bits, character insertion or deletion, crc generation, checking break and abort generation and detection, and many other protocol-dependent features. the escc (enhanced scc) is pin and software compatible to the cmos scc version. the following enhancements were made to the cmos scc: n deeper transmit fifo (4 bytes) n deeper receive fifo (8 bytes) n programmable fifo interrupt and dma request level n seven enhancements to improve sdlc link layer supports: - automatic transmission of the opening flag - automatic reset of tx underrun/eom latch - deactivation of /rts pin after closing flag - automatic crc generator preset - complete crc reception - txd pin automatically forced high with nrzi encoding when using mark idle - status fifo handles better frames with an abort - receive fifo automatically unlocked for special receive interrupts when using the sdlc status fifo n delayed bus latching for easier microprocessor interface n new programmable features added with write register 7' (wr seven prime) n write registers, 3, 4, 5 and 10 are now readable n read register 0 latched during access n dpll counter output available as jitter-free transmitter clock source n enhanced /dtr, /rts deactivation timing
3-19 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 n nrz, nrzi or fm encoding/decoding. manchester code decoding (encoding with external logic). n baud rate generator in each channel n digital phase-locked loop (dpll) for clock recovery n crystal oscillator the following features are implemented in the escc ? for the z80182/z8l182 only: n new 32-bit crc-32 (ethernet polynomial) n escc programmable clock - programmed to be equal to system clock divided by one or two - programmed by z80182 enhancement register note: the escc ? programmable clock must be programmed to divide-by-two mode when operating above the following conditions: C phi > 20 mhz at 5.0v C phi > 10 mhz at 3.0v the following features are common to both the escc and the cmos scc: n two independent full-duplex channels n synchronous/isochronous data rates: - up to 1/4 of the pclk using external clock source - up to 5 mbits/sec at 20 mhz pclk (escc). n asynchronous capabilities - 5, 6, 7 or 8 bits/character (capable of handling 4 bits/character or less) - 1, 1.5, or 2 stop bits - odd or even parity - times 1, 16, 32 or 64 clock modes - break generation and detection - parity, overrun and framing error detection n byte oriented synchronous capabilities: - internal or external character synchronization - one or two sync characters (6 or 8 bits/sync character) in separate registers - automatic cyclic redundancy check (crc) generation/detection n sdlc/hdlc capabilities: - abort sequence generation and checking - automatic zero insertion and detection - automatic flag insertion between messages - address field recognition - i-field residue handling - crc generation/detection - sdlc loop mode with eop recognition/loop entry and exit
3-20 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 transmit logic channel a r eceive and transmit clock multipex er transmit fifo 4 bytes t ransmit mu x d ata encoding & cr c generation digital p hase-locke d loop b aud ra te generat or crysta l o scillat or amplifi er modem/control logic r eceive mu x crc checker , data decode & s ync charact er detection rec. status* fifo rec. data* fifo s dlc frame status fif o 10 x 19 receive logic txda /trxca /rtxca /ctsa /dcda /synca /rtsa /dtra//reqa rxda e xploded vie w i ntern al contr ol logic c hannel a registe r c hannel b registe r i nterru pt contro l logic cpu & dm a b us interfa ce d atab us c ontr ol channel a channel b /in t /intac k i ei ie o interru pt contr ol * 8 bytes each figure 5. escc block diagram z85230 escc ? block diagram for a detailed description of the z85230 escc, refer to the escc technical manual. the following figure is the block diagram of the discrete escc, which was integrated into the z182. the /int line is internally connected to "into of the z182.
3-21 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 the z80182/z8l182 has a 16550 mimic interface that allows it to mimic the 16550 device. it has all the interface pins necessary to connect to the pc/xt/at bus. it contains the complete register set of the part with the same interrupt structure. the data path allows parallel transfer of data to and from the register set by the internal z80180 of the z80182/z8l182. there is no shift register associated with the mimic of the 16550 uart. this interface saves the application from doing a serial transfer before performing data compression or error correction on the data. control of the register set is maintained by six priority encoded interrupts to the z80182/z8l182. when the pc/ xt/at writes to thr, mcr, lcr, dll, dlm, fcr or reads the rbr, an interrupt to the z80182/z8l182 is generated. each interrupt can be individually masked off or all interrupts can be disabled by writing a single bit. both mode 0 and mode 2 interrupts are supported by the 16550 mimic interface. 16550 mimic interface functional description two eight-bit timers are also available to control the data transfer rate of the 16550 mimic interface. their input is tied to the escc channel b divide clock, so a down count of 24 bits is possible. an additional two eight bit timers are available for programming the fifo timeout feature (four character time emulation) for both receive and transmit fifos. the 16550 mimic interface supports the pc/xt/at interrupt structure as well as an additional mode that allows for a wired logic and interrupt structure. the 16550 mimic interface is also capable of high speed parallel dma transfers by using two control lines and the transmit and receive registers of the 16550 mimic interface. all registers of the 16550 mimic interface are accessible in any page of i/o space since only the lowest eight address lines are decoded. see figure 6 for a block diagram of the 16550 mimic interface. 16550 mimic register set 4 8 16550 mimic side or pc side interface pc addr/decode pc databus receive timer transmit timer z80180 irq control mpu side interface control/ config register databus z80180 address pc irq dma control 8 z80180 databus 6 pc dma cntl 2 z80180 dma control pc irq 2 1 figure 6. 16550 mimic block diagram
3-22 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 16550 mimic fifo description the receiver fifo consists of a 16-word fifo capable of storing eight data bits and three error bits for each character stored (figure 7). parity error, framing error and break detect bits are stored along with the data bits by copying their value from three shadow bits that are write only bits for the z80180 mpu lsr address. the three shadow bits are cleared after they are copied to the fifo memory. in fifo mode, to write error bits into the receiver fifo, the mpu must first write the parity, framing and break detect status to the line status register (shadow bits) and then write the character associated into the receiver buffer. the data and error bits will then move into the same address in the fifo. the error bits become available to the pc side of the interface when that particular location becomes the next address to read (top of fifo). at that time, they may either be read by the pc by accessing them in the lsr, or they may cause an interrupt to the pc interface if so enabled. the error bits are set by the error status of the byte at the top of the fifo, but may only be cleared by reading the lsr. if successive reads of the receiver fifo are performed without reading the lsr, the status bits will be set if any of the bytes read have the respective error bit set. see table 6 for the setting and clearing of the line status register bits. w r i t e b u f f e r 16x8 data bits 16x3 error bits r e a d b u f f e r write pointer alu read pointer sync internal clock mpu cntl line pc read lsr b2-b4 error 3 3 mpu write lsr shadow b2-b4 8 mpu databus (mpu side write) internal clock mpu irq sync 8 5 pc side databus (pc side read) fifo control register pc irq pc cntrl line internal clock mpu side interface 16550 mimic or pc side interface figure 7. 16550 mimic receiver fifo block diagram
3-23 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 table 6. 16550 line status register error description how to set how to clear error in at least one data byte available at least one error in receiver when there are no more rcvr in fifo with one error fifo errors fifo *temt transmitter empty mpu writes a 1 mpu writes a 0 ? *thre transmitter holding when mpu has when holding register register is empty read or emptied is not empty the holding register break break occurs when mpu writes 1 there is a detect received data input pc-side read is held in logic-0 of the lsr for longer than a full word transmission framing received character mpu writes 1 there is a error did not have a valid pc-side read stop bit of the lsr parity received character mpu writes 1 there is a error did not have correct pc-side read even or odd parity of the lsr overrun overlapping received mpu makes there is a error characters, thereby two writes pc-side read destroying the to receiver of the lsr previous character buffer register ?data indicates complete mpu writes to empty receiver ready incoming data has rcvr fifo or or receiver fifo been received receiver buffer register notes: * the temt and thre bits take on different functions when temt/double buffer mode is enabled. ? these signals are delayed to host when using character emulation delay.
3-24 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 16550 mimic fifo description (continued) the pc interface may be interrupted when 1, 4, 8 or 14 bytes are available in the receiver fifo by setting bits 6 and 7 in the fcr (fifo control register, pc address 02h) to the appropriate value. if the fifo is not empty, but below the above trigger value, a timeout interrupt is available if the receiver fifo is not written by the mpu or read by the pc from an interval determined by the character timeout timer. this is an additional timer with mpu access only that is used to emulate the 16550 4 character timeout delay. the receive fifo timeout timers are designed to reload and begin countdown after every read or write of the rx fifo, regardless of the rx trigger level or number of bytes in the fifo. therefore, it is possible to get timeout interrupts more often than receive data interrupts. in order to closely emulate a 16550, a receive timeout timer enhancement is provided. when enabling this feature, the timeout timer will not begin counting down until the character emulation timer for each byte of data in the rx fifo has expired. note: enabling this feature will facilitate increased 16550 compatibility but may impede throughput. if the receive timeout interrupt occurs, the pc host will only be allowed to read up to 4-5 consecutive characters before the data ready bit is forced to zero (even if there is still more data in fifo). this is required to maintain character pacing. r e a d b u f f e r 16x8 data bits w r i t e b u f f e r read pointer alu sync internal clock mpu cntl line 8 mpu databus (mpu side read) fifo control register mpu irq sync 8 pc side databus (pc side write) internal clock pc irq pc cntrl line internal clock mpu side interface 16550 mimic or pc side interface write pointer 5 the timer receives the escc /trxcb as its input clock. software must determine the correct values to program into the receiver timeout register and the escc trxcb to achieve the correct delay interval for timeout. these interrupts are cleared by the fifo reaching the trigger point or by resetting the timeout interval timer by fifo mpu write or pc read access. with fifo mode enabled, the mpu is interrupted when the receiver fifo is empty, corresponding to bit 5 being set in the ius/ip register (mpu access only). this bit corresponds to a pc read of the receive buffer in non-fifo (16450) mode. the interrupt source is cleared when the fifo becomes non-empty or the mpu reads the ius/ip register. the transmitter fifo is 16-byte fifo with pc write and mpu read access (figure 8). in fifo mode, the pc receives an interrupt when the transmitter becomes empty corresponding to bit 5 being set in the lsr. this bit and the interrupt source are cleared when the transmit fifo becomes non-empty or the interrupt identification register (iir) register is read by the pc. figure 8. 16550 mimic transmitter fifo block diagram
3-25 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 on the mpu interface, the transmitted data available can be programmed to interrupt the mpu on 1, 4, 8 or 14 bytes of available data by seeing the appropriate value in the mpu fscr control register (mpu write only xxech) bits 6 and 7. a timeout feature exists, transmit timeout timer, z80182/z8l182 mimic synchronization considerations because of the asynchronous nature of the fifos on the mimic, some synchronization plan must be provided to prevent conflict from the dual port accesses of the mpu and the pc. to solve this problem, i/o to the fifo is buffered and the buffers allow both pc and mpu to access the fifo asynchronously. read and write requests are then synchronized by means of the mpu clock. incoming signals are buffered in such a way that metastable input levels are stabilized to valid 1 or 0 levels. actual transfers to and from the buffers, from and to the fifo memory, are timed by the mpu clock. alu evaluation is performed on a different phase than the transfer to ensure stable pointer values. another potential problem is that of simultaneous access of the mpu and pc to any of the various mailbox type registers. this is solved by dual buffering of the various read/write registers. during a read access by either the mpu or pc to a mailbox register, the data in the output or slave portion of the buffered register is not permitted to change. any write that might take place during this time will be stored in the input of master part of the register. the corresponding status/interrupt is reset appropriately based on the write having followed the read to the register. for example, the ius/ip bit for the lcr write will not be cleared by the mpu read of the lcr if a simultaneous write to the lcr by the pc takes place. instead the lsr data will change after the read access and ius/ip bit 3 remains at logic 1. which is an additional 8-bit timer with scc txrcb as the input source. if the transmitter fifo is non-empty and no pc write or mpu read of the fifo has taken place within the timer interval, a timeout occurs causing a corresponding interrupt to the mpu.
3-26 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z80182 mimic double buffering for the transmitter the z80182 rev da implements double buffering for the transmitter in 16450 mode and sets the temt bit in the lsr register automatically. when this feature is enabled and character delay emulation is being used (see figure 9): 1. the pc thre bit in the lsr register is set when the thr register is empty; 2. pc host writes to the 16450 thr register; 3. whenever the z80182 tsr buffer is empty and one character delay timer is in a timed-out state, the byte from the thr register is transferred to the tsr buffer; the timer is in timed-out state after fifo reset or after host temt is set. this allows a dual write to thr when host temt is set. 4. restart character delay timer (timer reloads and counts down) with byte transfer from thr register to the tsr buffer; 5. whenever the tsr buffer is full, the temt bit in mpu lsr register is reset with no delay; 6. mpu reads tsr buffer; 7. temt bit in lsr register for mpu is set with no delay whenever the tsr buffer is empty; 8. when the tsr buffer is read by mpu and thr register is empty and one character delay timer reaches zero, the temt bit in the lsr register for host is set from 0 to 1. the pc thre bit in the lsr register is reset whenever the thr register is full and set whenever thr register is empty. mpu ireq and dma request for the transmit data is trigger whenever tsr buffer is full and cleared whenever tsr buffer is empty. if character delay emulation is not used the temt bit in the lsr register is set whenever both the thr register and the tsr buffer are both empty. the host temt bit is clear if there is data in either the tsr buffer of thr register. 16450 thr register host write empty/full host & mpu thre = 1 0 byte transfer if: - thre=0; - tsr = 1; - character delay timer is timed out. note: timer reloads and counts down whenever data is transferred from thr to tsr. thr to tsr delay transfer tsr transmit shift reg. emulation empty/full (mpu temt) tsre = 1 0 host temt = 1 if - thre = 1 - tsre = 1 - emulation delay timer is timed out note: mpu sees tsr bit in the lsr register as temt bit added tsr buffer for the transmit data figure 9. temt emulation logic implementation
3-27 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 programming the following subsections explain and define the parameters for i/o address assignments. the three tables in this section describe the mapping of the common registers shared by the mpu and the 16550 mimic. the mpu address refers to the i/o address as accessed from the mpu side (the z180 ? mpu interface side of the 16550 mimic). note that only the lowest eight address lines are decoded for z182 peripheral access. the full sixteen address lines are decoded for on-chip z180 mpu access. the pc address (coined because the uart is common in pcs) is the address needed to access the mimic registers through the mimic interface signals. the mimic interface signals are multiplexed with the escc channel b and the port a signals, and must be activated through the system configuration register and the interrupt edge/pin mux register. table 7. z80182/z8l182 mpu registers register name mpu addr pc addr z80182/z8l182 mpu control registers 0000h to 00x3fh none (relocatable to 0040h to 007fh or 0080h to 00bfh) parallel ports functional description the z80182/z8l182 has three 8-bit bi-directional ports. each bit is individually programmable for input or output (with the exception of pc6 and pc7 which are inputs only). the ports are controlled through two registers: the port direction control register and the port data register. (please see register description for ports a, b and c). note: x indicates dont care condition table 8. z80182/z8l182 mimic register map register name mpu addr/access pc addr/access mmc mimic master control register xxffh r/w none ius/ip interrupt pending xxfeh r/wb7 none ie interrupt enable xxfdh r/w none ivec interrupt vector xxfch r/w none ttcr transmit time constant xxfah r/w none rtcr receive time constant xxfbh r/w none fscr fifo status and control xxech r/w7-4 none rttc receive timeout time constant xxeah r/w none tttc transmit timeout time constant xxebh r/w none rbr receive buffer register xxf0h w only 00h dlab=0 r only thr transmit holding register xxf0h r only 00h dlab=0 w only ier interrupt enable register xxf1h r only 01h dlab=0 r/w iir interrupt identification none 02h r only fcr fifo control register xxe9h r only 02h w only mm register xxe9h w only none lcr line control register xxf3h r only 03h r/w mcr modem control register xxf4h r only 04h r/w lsr line status register xxf5h r/wb6432 05h r only msr modem status register xxf6h r/wb7-4 06h r only scr scratch register xxf7h r only 07h r/w dll divisor latch (lsbyte) xxf8h r only 00h dlab=1 r/w dlm divisor latch (msbyte) xxf9h r only 01h dlab=1 r/w
3-28 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 programming (continued) table 9. z80182/z8l182 escc, pia and misc registers register name mpu addr/access pc addr/access wsg chip select register xxd8h r/w none z80182 enhancements register xxd9h r/w none pc data direction register xxddh r/w none pc data register xxdeh r/w none interrupt edge/pin mux control xxdfh r/w none escc chan a control register xxe0h r/w none escc chan a data register xxe1h r/w none escc chan b control register xxe2h r/w none escc chan b data register xxe3h r/w none pb data direction register xxe4h r/w none pb data register xxe5h r/w none ramubr ram upper boundary register xxe6h r/w none ramlbr ram lower boundary register xxe7h r/w none rom address boundary register xxe8h r/w none pa data direction register xxedh r/w none pa data register xxeeh r/w none system configuration register xxefh r/w none
3-29 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z182 mpu control registers figures 10 through 50 refer to the z80182/z8l182 mpu control registers. for additional information, refer to the z8s180 product specification and technical manual. asci channels control registers mpe re te /rts0 mpbr/ efr mod2 mod1 mod0 0 r/w 0 r/w 0 r/w 1 r/w x r/w 0 r/w 0 r/w 0 r/w bit upon reset r/w cntla0 mode selection addr 00h read - multiprocessor bit receive write - error flag reset request to send transmit enable receive enable multiprocessor enable 0 0 0 start + 7-bit data + 1 stop 0 0 1 start + 7-bit data + 2 stop 0 1 0 start + 7-bit data + parity + 1 stop 0 1 1 start + 7-bit data + parity + 2 stop 1 0 0 start + 8-bit data + 1 stop 1 0 1 start + 8-bit data + 2 stop 1 1 0 start + 8-bit data + parity + 1 stop 1 1 1 start + 8-bit data + parity + 2 stop figure 10a. asci control register a (ch. 0)
3-30 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 asci channels control registers (continued) mpe re te cka1d mpbr/ efr mod2 mod1 mod0 0 r/w 0 r/w 0 r/w 1 r/w x r/w 0 r/w 0 r/w 0 r/w bit upon reset r/w cntla1 mode selection addr 01h read - multiprocessor bit receive write - error flag reset cka1 disable transmit enable receive enable multiprocessor enable 0 0 0 start + 7-bit data + 1 stop 0 0 1 start + 7-bit data + 2 stop 0 1 0 start + 7-bit data + parity + 1 stop 0 1 1 start + 7-bit data + parity + 2 stop 1 0 0 start + 8-bit data + 1 stop 1 0 1 start + 8-bit data + 2 stop 1 1 0 start + 8-bit data + parity + 1 stop 1 1 1 start + 8-bit data + parity + 2 stop figure 10b. asci control register a (ch. 1)
3-31 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 mpbt mp /cts/ ps ss2 ss1 ss0 invalid r/w 0 r/w ? r/w 0 r/w 0 r/w 1 r/w 1 r/w 1 r/w r/w cntlb0 clock source and speed select addr 02h bit upon reset dr pe0 divide ratio parity even or odd clear to send/prescale multiprocessor multiprocessor bit transmit ? /cts - depending on the condition of /cts pin. ps - cleared to 0. general ps = 0 ps = 1 divide ratio (divide ratio = 10) (divide ratio = 30) ss, 2, 1, 0 dr = 0 (x16) dr = 1 (x64) dr = 0 (x16) dr = 1 (x64) 000 ? ? 160 ? ? 640 ? ? 480 ? ? 1920 001 ? ? 320 ? ? 1280 ? ? 960 ? ? 3840 010 ? ? 640 ? ? 2580 ? ? 1920 ? ? 7680 011 ? ? 1280 ? ? 5120 ? ? 3840 ? ? 15360 100 ? ? 2560 ? ? 10240 ? ? 7680 ? ? 30720 101 ? ? 5120 ? ? 20480 ? ? 15360 ? ? 61440 110 ? ? 10240 ? ? 40960 ? ? 30720 ? ? 122880 111 external clock (frequency < ? ? 40) figure 11. asci control register b (ch. 0)
3-32 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 asci channels control registers (continued) mpbt mp /cts/ ps ss2 ss1 ss0 invalid r/w 0 r/w 0 r/w 0 r/w 0 r/w 1 r/w 1 r/w 1 r/w r/w cntlb1 clock source and speed select addr 03h bit upon reset dr pe0 divide ratio parity even or odd read - status of /cts pin write - select ps multiprocessor multiprocessor bit transmit general ps = 0 ps = 1 divide ratio (divide ratio = 10) (divide ratio = 30) ss, 2, 1, 0 dr = 0 (x16) dr = 1 (x64) dr = 0 (x16) dr = 1 (x64) 000 ? ? 160 ? ? 640 ? ? 480 ? ? 1920 001 ? ? 320 ? ? 1280 ? ? 960 ? ? 3840 010 ? ? 640 ? ? 2580 ? ? 1920 ? ? 7680 011 ? ? 1280 ? ? 5120 ? ? 3840 ? ? 15360 100 ? ? 2560 ? ? 10240 ? ? 7680 ? ? 30720 101 ? ? 5120 ? ? 20480 ? ? 15360 ? ? 61440 110 ? ? 10240 ? ? 40960 ? ? 30720 ? ? 122880 *111 external clock (frequency < ? ? 40) note: * baud rate is external clock rate ? 16; therefore, ? ? (40 x 16) is maximum baud rate using external clocking. figure 12. asci control register b (ch. 1)
3-33 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 upon reset rdrf ovrn /dcd0 tdre tie 0 r 0 r 0 r 0 r 0 r/w r ?? r 0 r/w r/w stat0 transmit interrupt enable addr 04h bit rie fe transmit data register empty data carrier detect receive interrupt enable framing error parity error pe ? over run error receive data register full ? /dcd0 - depending on the condition of /dcd0 pin. ?? /cts0 pin tdre l 1 h 0 figure 13. asci status register rdrf ovrn cts1e tdre tie 0 r 0 r 0 r 0 r 0 r/w r/w 1 r 0 r/w r/w stat1 transmit interrupt enable addr 05h bit upon reset rie fe transmit data register empty /cts1 enable receive interrupt enable framing error parity error pe 0 over run error receive data register full figure 14. asci status register (ch. 1)
3-34 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 76543210 break feature bit 0 = dissolve 1 = enable brk0 read/write addr 12h break detect bit 0 = no break 1 = break break generate bit 0 = no break 1 = break asci channels control registers (continued) figure 15. asci transmit data register (ch. 0) 76543210 transmit data tdr0 write only addr 06h xxxxxxxx received data tsr1 read only addr 09h figure 18. asci receive data register (ch. 1) figure 16. asci transmit data register (ch. 1) 76543210 transmit data tdr1 write only addr 07h xxxxxxxx received data tsr0 read only addr 08h figure 17. asci receive data register (ch. 0) figure 19. asci break control register (ch. 0) 76543210 break feature enable bit 0 = disable 1 = enable brk1 read/write addr 13h break detect bit 0 = no break 1 = break break generate bit 0 = no break 1 = break figure 20. asci break control register (ch. 1)
3-35 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 csi/o registers ef eie ss2 ss1 ss0 0 r 0 r/w 0 r/w 0 r/w 11 r/w 1 r/w 1 r/w r/w speed select addr 0ah bit upon reset - te transmit enable receive enable end interrupt enable end flag re cntr ss2, 1, 0 baud rate 000 ? ? 20 001 ? ? 40 010 ? ? 80 011 ? ? 100 figure 21. csi/o control register ss2, 1, 0 baud rate 100 ? ? 320 101 ? ? 640 110 ? ? 1280 111 external clock (frequency < ? ? 20) 76543210 read - received data write - transmit data trdr read/write addr 0bh figure 22. csi/o transmit/receive data register
3-36 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 timer data registers 76543210 tmdr0l read/write addr 0ch figure 23. timer 0 data register l 76543210 tmdr1l read/write addr 14h figure 24. timer 1 data register l 15 14 13 12 11 10 9 8 tmdr0h read/write addr 0dh when read, read data register l before reading data register h. figure 25. timer 0 data register h 15 14 13 12 11 10 9 8 tmdr1h read/write addr 15h when read, read data register l before reading data register h. figure 26. timer 1 data register h timer reload registers 76543210 rldr0l read/write addr 0eh figure 27. timer 0 reload register l 15 14 13 12 11 10 9 8 rldr0h read/write addr 0fh figure 29. timer 0 reload register h 76543210 rldr1l read/write addr 16h figure 28. timer 1 reload register l 15 14 13 12 11 10 9 8 rldr1h read/write addr 17h figure 30. timer 1 reload register h
3-37 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 timer control register tif1 tif0 toc0 tde1 tde0 0 r 0 r 0 r/w 0 r/w 0 r/w r/w 0 r/w 0 r/w r/w tcr timer down count enable 1,0 addr 10h bit upon reset toc1 tie0 timer output control 1,0 timer interrupt enable 1,0 timer interrupt flag 1,0 tie1 0 toc1,0 a15/tout 00 inhibited 01 toggle 10 0 11 1 figure 31. timer control register
3-38 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 free running counter cpu control register 76 543 210 frc read only addr 18h figure 32. free running counter figure 33. cpu note: see figure 49 for full description. 000 00 000 cpu control register (ccr) d7 d6 d5 d4 d3 d2 d1 d0 addr 1fh dma registers sar0l read/write addr 20h sa7 sa0 sar0h read/write addr 21h sa15 sa8 sar0b read/write addr 22h sa16 sa19 - --- bits 0-2 (3) are used for sar0b a19, x x x x a18, x x x x a17, 0 0 1 1 a16 0 1 0 1 dma transfer request /dreq0 (external) rdr0 (asci0) rdr1 (asci1) not used figure 34. dma 0 source address registers
3-39 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 dma registers dar0l read/write addr 23h da7 da0 dar0h read/write addr 24h da15 da8 dar0b read/write addr 25h da16 da19 - --- bits 0-2 (3) are used for dar0b a19, x x x x a18, x x x x a17, 0 0 1 1 a16 0 1 0 1 dma transfer request /dreq0 (external) tdr0 (asci0) tdr1 (asci1) not used figure 35. dma 0 destination address registers bcr0l read/write addr 26h bc7 bc0 bcr0h read/write addr 27h bc15 bc8 figure 36. dma 0 byte counter registers mar1l read/write addr 28h ma7 ma0 mar1h read/write addr 29h ma15 ma8 mar1b read/write addr 2ah ma16 ma19 - --- figure 37. dma 1 memory address registers bcr1l read/write addr 2eh bc7 bc0 bcr1h read/write addr 2fh bc15 bc8 figure 39. dma 1 byte count registers iar1l read/write addr 2bh ia7 ia0 iar1h read/write addr 2ch ia15 ia8 figure 38. dma i/o address registers
3-40 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 dma registers (continued) de1 de0 die0 - dime 0 r/w 0 r/w 1 w 1 w 00 r/w 10 r r/w dma master enable addr 30h bit upon reset die1 /dwe0 dma interrupt enable 1, 0 dma enable bit write enable 1, 0 dma enable ch 1, 0 /dwe1 dstat r/w figure 40. dma status register - - sm0 mmod - 110 r/w 0 r/w 00 r/w 01 r/w memory mode select addr 31h bit upon reset sm1 dm0 ch 0 source mode 1, 0 ch 0 destination mode 1, 0 dm1 dmode r/w r/w dm1, 0 00 01 10 11 destination m m m i/o address dar0+1 dar0-1 dar0 fixed dar0 fixed sm1, 0 00 01 10 11 source m m m i/o address sar0+1 sar0-1 sar0 fixed sar0 fixed 0 1 mode cycle steal mode burst mode mmod figure 41. dma mode registers
3-41 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 mwi1 mwi0 dms0 dim1 dim0 111 r/w 1 r/w 00 r/w 00 r/w dma ch 1 i/o memory mode select addr 32h bit upon reset dms1 iwi0 /dreqi select, i = 1, 0 i/0 wait insertion iwi1 dcntl r/w r/w r/w r/w r/w memory wait insertion dm1, 0 00 01 10 11 transfer mode m - i/o m - i/o i/o - m i/o - m address increment/decrement dmsi 1 0 sense edge sense level sense mwi1, 0 00 01 10 11 no. of wait states 0 1 2 3 iwi1, 0 00 01 10 11 no. of wait states 1 2 3 4 mar1+1 mar1-1 iar1 fixed iar1 fixed iar1 fixed iar1 fixed mar1+1 mar1-1 * note: * if using rom/ram chip select wait state generators, the z180 wait state generator should be set to 0. figure 42. dma/wait control register
3-42 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 mmu registers cb7 cb6 cb2 cb1 cb0 000 r/w 0 r/w 00 r/w 00 r/w mmu common base register addr 38h bit upon reset cb3 cb4 cb5 cbr r/w r/w r/w r/w r/w figure 43. mmu common base register bb7 bb6 bb2 bb1 bb0 000 r/w 0 r/w 00 r/w 00 r/w mmu bank base register addr 39h bit upon reset bb3 bb4 bb5 bbr r/w r/w r/w r/w r/w figure 44. mmu bank base register ca3 ca2 ba2 ba1 ba0 111 r/w 1 r/w 00 r/w 00 r/w mmu bank area register addr 3ah bit upon reset ba3 ca0 ca1 cbar r/w r/w r/w r/w r/w mmu common area register figure 45. mmu common/bank area register
3-43 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 system control registers il7 il6 - - - 000 r/w 00000 r/w interrupt vector low addr 33h bit upon reset - - il5 il r/w r/w figure 46. interrupt vector low register trap ufo ite2 ite1 ite0 001 110 r/w 01 r/w /int enable 2, 1, 0 addr 34h bit upon reset - - - itc r/w r r/w r/w undefined fetch object trap figure 47. int/trap control register refe refw - cyc1 cyc0 111 11100 r/w cycle select addr 36h bit upon reset - - refresh wait state refresh enable - rcr r/w r/w r/w r/w cyc1, 0 00 01 10 11 interval of refresh cycle 10 states 20 states 40 states 80 states figure 48. refresh control register
3-44 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 system control registers (continued) m1e /m1te --- 111 11 111 r/w i/o compatibility addr 3eh bit upon reset - - /m1 temporary enable /m1 enable /ioc omcr w r/w r/w note: this register should be programmed to 0x0xxxxxb (x = don't care) as a part of initialization. figure 49. operation mode control register ioa7 ioa6 --- 000 11111 r/w i/o stop addr 3fh bit upon reset - - i/o address combination of 11 is reserved iostp icr r/w r/w r/w figure 50. i/o control register
3-45 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 additional features on the z182 mpu the following is a detailed description of the enhancements to the z8s180 from the standard z80180 in the areas of standby, idle, and standby-quick recovery modes. add-on features there are five different power-down modes. sleep and system stop are inherited from the z80180. in sleep mode, the cpu is in a stopped state while the on-chip i/os are still operating. in i/o stop mode, the on-chip i/os are in a stopped state while leaving the cpu running. in system stop mode, both the cpu and the on-chip i/os are in the stopped state to reduce the current consumption. the z8s180 has added two additional power-down modes, standby and idle, to reduce the current consumption even further. the differences among these power-down modes are summarized in table 10. table 10. power down modes power-down cpu on- chip recovery recovery time modes core i/o osc. clkout source (minimum) sleep stop running running running reset, interrupts 1.5 clock i/o stop running stop running running by programming - system stop stop stop running running reset, interrupts 1.5 clock idle ? stop stop running stop reset, interrupts, busreq 8 +1.5 clock standby ? stop stop stop stop reset, interrupts, busreq 2 17 +1.5 clock (normal recovery) 2 6 +1.5 clock (quick recovery) notes: ? idle and standby modes are only offered in z8s180. note that the minimum recovery time can be achieved if interrupt is used as the recovery source. standby mode the z8s180 has been designed to save power. two low- power programmable power-down modes have been added; standby mode and idle mode. the standby/idle mode is selected by multiplexing d6 and d3 of the cpu control register (ccr, i/o address = 1fh). to enter standby mode: 1. set d6 and d3 to 1 and 0, respectively. 2. set the i/o stop bit (d5 of icr, i/o address = 3fh) to 1. 3. execute the sleep instruction. when the part is in standby mode, it behaves similar to the system stop mode which currently exists on the z80180, except that the standby mode stops the external oscillator, internal clocks and reduces power consumption to typically 50 m a.. since the clock oscillator has been stopped, a restart of the oscillator requires a period of time for stabilization. an 18-bit counter has been added in the z8s180 to allow for oscillator stabilization. when the part receives an external irq or busreq during standby mode, the oscillator is restarted and the timer counts down 2 17 counts before acknowledgment is sent to the interrupt source. the recovery source needs to remain asserted for duration of the 2 17 count, otherwise standby will be resumed. the following is a description of how the part exits standby for different interrupts and modes of operation. standby mode exit with /reset the /reset input needs to be asserted for a duration long enough for the crystal oscillator to stabilize and then exit from the standby mode. when /reset is de-asserted, it goes through the normal reset timing to start instruction execution at address (logical and physical) 0000h. the clocking is resumed within the z8s180 and at the system clock output after /reset is asserted when the crystal oscillator is restarted, but not yet stabilized.
3-46 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 if an external maskable interrupt input is asserted, the cpu responds according to the status of the global interrupt enable flag ief1 (determined by the ite1 bit) and the settings of the corresponding interrupt enable bit in the interrupt/trap control register (itc: i/o address = 34h): a. if an interrupt source is disabled in the itc, asserting the corresponding interrupt input would not cause the z8s180 to exit standby mode. this is true regardless of the state of the global interrupt enable flag ief1. b. if the global interrupt flag ief1 is set to 1, and if an interrupt source is enabled in the itc, asserting the corresponding interrupt input causes the z8s180 to exit standby mode. the cpu performs an interrupt acknowledge sequence appropriate to the input being asserted when clocking is resumed if: - the interrupt input follows the normal interrupt daisy chain protocol. - the interrupt source is active until the acknowledge cycle is completed. c. if the global interrupt flag ief1 is disabled, i.e., reset to 0, and if an interrupt source is enabled in the itc, asserting the corresponding interrupt input will still cause the z8s180 to exit standby mode. the cpu will proceed to fetch and execute instructions that follow the sleep instruction when clocking is resumed. if the external maskable interrupt input is not active until clocking resumes, the z8s180 will not exit standby mode. if the non-maskable interrupt (/nmi) is not active until clocking resumes, the z8s180 still exits the standby mode even if the interrupt sources go away before the timer times out, because /nmi is edge-triggered. the condition is latched internally once /nmi is asserted low. idle mode idle mode is another power-down mode offered by the z8s180. to enter idle mode: 1. set d6 and d3 to 0 and 1, respectively. 2. set the i/o stop bit (d5 of icr, i/o address = 3fh) to 1. 3. execute the sleep instruction. standby mode exit with bus request optionally, if the brext bit (d5 of cpu control register) is set to 1, the z8s180 exits standby mode when the /busreq input is asserted; the crystal oscillator is then restarted. an internal counter automatically provides time for the oscillator to stabilize, before the internal clocking and the system clock output of the z8s180 are resumed. the z8s180 relinquishes the system bus after the clocking is resumed by: - tri-state the address outputs a19 through a0. - tri-state the bus control outputs /mreq, /iorq, /rd and /wr. - asserting /busack the z8s180 regains the system bus when /busreq is deactivated. the address outputs and the bus control outputs are then driven high; the standby mode is exited. if the brext bit of the cpu control register (ccr) is cleared, asserting the /busreq would not cause the z8s180 to exit standby mode. if standby mode is exited due to a reset or an external interrupt, the z8s180 remains relinquished from the system bus as long as /busreq is active. standby mode exit with external interrupts standby mode can be exited by asserting input /nmi. the standby mode may also exit by asserting /int0, /int1 or /int2, depending on the conditions specified in the following paragraphs. /int0 wake-up requires assertion throughout duration of clock stabilization time (2 17 clocks). if exit conditions are met, the internal counter provides time for the crystal oscillator to stabilize, before the internal clocking and the system clock output within the z8s180 are resumed. 1. exit with non-maskable interrupts if /nmi is asserted, the cpu begins a normal nmi interrupt acknowledge sequence after clocking resumes. 2. exit with external maskable interrupts
3-47 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 when the part is in idle mode, the clock oscillator is kept oscillating, but the clock to the rest of the internal circuit, including the clkout, is stopped completely. idle mode is exited in a similar way as standby mode, i.e., reset, bus request or external interrupts, except that the 2 17 bit wake-up timer is bypassed; all control signals are asserted eight clock cycles after the exit conditions are gathered. standby-quick recovery mode standby-quick recovery mode is an option offered in standby mode to reduce the clock recovery time in standby mode from 2 17 clock cycles (6.5 ms at 20 mhz) to 2 6 clock cycles (3.2 m s at 20 mhz). this feature can only be used when providing an oscillator as clock source. to enter standby-quick recovery mode: 1. set d6 and d3 to 1 and 1, respectively. 2. set the i/o stop bit (d5 of icr, i/o address = 3fh) to 1. 3. execute the sleep instruction. when the part is in standby-quick recovery mode, the operation is identical to standby mode except when exit conditions are gathered, i.e., reset, bus request or external interrupts; the clock and other control signals are recovered sooner than the standby mode. note: if standby-quick recovery is enabled, the user must make sure stable oscillation is obtained within 64 clock cycles. cpu control register the z8s180 has an additional register which allows the programmer to select options that directly affect the cpu performance as well as controlling the standby operating mode of the chip. the cpu control register (ccr) allows the programmer to change the divide-by-two internal clock to divide-by-one. in addition, applications where emi noise is a problem, the z8s180 can reduce the output drivers on selected groups of pins to 25% of normal pad driver capability which minimizes the emi noise generated by the part. d7 d6 d5 d4 d3 d2 d1 d0 lncpuctl 0 = standard drive 1 = 25% drive on cpu control signals cpu control register (ccr) addr 1fh lnad/data 0 = standard drive 1 = 25% drive on a19-a0, d7-d0 reserved standby/idle enable 00 = no standby 01 = idle after sleep 10 = standby after sleep 11 = standby after sleep 64 cycle exit (quick recovery) lnphi 0 = standard drive 1 = 25% drive on ext.phi clock brext 0 = ignore busreq in standby/idle 1 = standby/idle exit on busreq clock divide 0 = xtal/2 1 = xtal/1 00000000 figure 51. cpu control register
3-48 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 cpu control register bit 7. clock divide select. bit 7 of the ccr allows the programmer to set the internal clock to divide the external clock by 2 if the bit is 0 and divide-by-one if the bit is 1. upon reset, this bit is set to 0 and the part is in divide-by-two mode. since the on-board oscillator is not guaranteed to operate above 20 mhz, an external source must be used to achieve the maximum 33 mhz operation of the part, i.e., an external clock at 66 mhz with 50% duty cycle. if an external oscillator is used in divide-by-one mode, the minimum pulse width requirement must be satisfied. bits 6 and 3. standby/idle enable. these two bits are used for enabling/disabling the idle and standby mode. setting d6, d3 to 0 and 1, respectively, enables the idle mode. in the idle mode, the clock oscillator is kept oscillating but the clock to the rest of the internal circuit, including the clkout, is stopped. the z8s180 enters idle mode after fetching the second opcode of a sleep instruction, if the i/o stop bit is set. setting d6, d3 to 1 and 0, respectively, enables the standby mode. in the standby mode, the clock oscillator is stopped completely. the z8s180 enters standby after fetching the second opcode of a sleep instruction, if the i/o stop bit is set. setting d6, d3 to 1 and 1, respectively, enables the standby-quick recovery mode. in this mode, its operations are identical to standby except that the clock recovery is reduced to 64 clock cycles after the exit conditions are gathered. similarly, in standby mode, the z8s180 enters standby after fetching the second opcode of a sleep instruction, if the i/o stop bit is set. bit 5. brext. this bit controls the ability of the z8s180 to honor a bus request during standby mode. if this bit is set to 1 and the part is in standby mode, a busreq is honored after the clock stabilization timer is timed out. bit 4. lnphi. this bit controls the drive capability on the phi clock output. if this bit is set to 1, the phi clock output is reduced to 25% of its drive capability. bit 2. reserved bit 1. lncpuctl. this bit controls the drive capability of the cpu control pins. when this bit is set to 1, the output drive capability of the following pins is reduced to 25% of the original drive capability: - /busack - /mreq - /rd - /iorq - /wr - /rfsh - /m1 - /halt - e - /tend1 bit 0. lnad/data. this bit controls the drive capability of the address/data bus output drivers. if this bit is set to 1, the output drive capability of the address and data bus output is reduced to 25% of its original drive capability.
3-49 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z85230 escc ? control registers see figures 52 and 53 for the escc control registers. for additional information, refer to the escc product specification /technical manual. the z80182/z8l182 has two escc channels. they can be accessed in any page of i/o space since only the lowest eight address lines are decoded for access. their z180 ? mpu address locations are shown in table 11. when the 16550 mimic interface is enabled, escc channel b is disconnected from the output pins. the channel b /trxcb clock is connected to the transmit and receive timers of the 16550 mimic interface. it is recommended that /trxcb be programmed as an output with proper baud rate values to timeout the transmitter and receiver of the 16550 mimic interface. table 11. escc control and data map escc channel a control z180 mpu address xxe0h data z180 mpu address xxe1h escc channel b control z180 mpu address xxe2h data z180 mpu address xxe3h
3-50 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 programming the escc ? the escc contains write registers in each channel that are programmed by the system separately to configure the functional uniqueness of the channels. in the escc, the data registers are directly addressed by selecting a high on the d//c pin. with all other registers (with the exception of wr0 and rr0), programming the write registers requires two write operations and reading the read registers, both a write and a read operation. the first write is to wr0 and contains three bits that point to the selected register. the second write is the actual control word for the selected read register accessed. all of the escc registers, including the data registers, may be accessed in this fashion. the pointer bits are automatically cleared after the read or write operation so that wr0 (or rr0) is addressed again. with the z80182/z8l182, a new feature is implemented in the escc. the transmitter and receiver is now capable of sending and comparing a 32-bit crc-32 (ethernet polynomial): x 32 + x 26 +x 23 +x 22 + x 16 + x 12 + x 11 +x 10 + x 8 + x 7 + x 5 + x 4 + x 2 + x + 1 this feature is enabled by access to wr7' bit 7, which selects the 32-bit crc polynomial for the transmitter and receiver and overrides any selection of sdlc/crc-16 crcs. when the 32-bit crc override feature is enabled, the transmitter will only send 32-bit crc when crc is to be sent. on the receive side, the crc comparison/calculation will be done only on 32-bit crc values. the result of the 32-bit crc comparison will be maintained in rr1 bit d6 in place of the 16-bit crc comparison result. the 32-bit crc compare result will also be maintained in the 10x19 fifo for frames in which 32-bit crc is enabled. the crc still can be preset to all 0s or all 1s. 32-bit crc is disabled upon power-up or reset. note: the escc cannot do simultaneous calculation/ comparison using both 16-bit and 32-bit crc. also, for the z80182/z8l182 only, the clock provided to the escc core is equal to the system clock divided by 1 or 2. the divider is programmed in the z80182 enhancement register bit 3. divide-by-two should be programmed when running the z182 beyond: - 20 mhz, 5v - 10 mhz, 3v note: upon power-up or reset the system clock is equal to the escc clock. initialization. the system program first issues a series of commands to initialize the basic mode of operation. this is followed by other commands to qualify conditions within the selected mode. for example, in the asynchronous mode, character length, clock rate, number of stop bits, and even or odd parity should be set first. then the interrupt mode is set, and finally, the receiver and transmitter are enabled. write registers. the escc contains 16 write registers (17 counting the transmit buffer) in each channel. these write registers are programmed separately to configure the functional "personality" of the channels. there are two registers (wr2 and wr9) shared by the two channels that are accessed through either of them. wr2 contains the interrupt vector for both channels, while wr9 contains the interrupt control bits and reset commands. a new register, wr7', was added to the escc and may be written to if wr15, d0 is set. figure 50 shows the format of each write register. read registers. the escc contains ten read registers (eleven, counting the receive buffer (rr8) in each channel). four of these may be read to obtain status information (rr0, rr1, rr10, and rr15). two registers (rr12 and rr13) are read to learn the baud rate generator time constant. rr2 contains either the unmodified interrupt vector (channel a) or the vector modified by status information (channel b). rr3 contains the interrupt pending (ip) bits (channel a only). rr6 and rr7 contain the information in the sdlc frame status fifo, but is only read when wr15, d2 is set. if wr7' d6 is set, write registers wr3, wr4, wr5, wr7, and wr10 can be read as rr9, rr4, rr5, and rr14, respectively. figure 51 shows the format of each read register.
3-51 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 control registers d7 d6 d5 d4 d3 d2 d1 d0 0 0 0 register 0 0 0 1 register 1 0 1 0 register 2 0 1 1 register 3 1 0 0 register 4 1 0 1 register 5 1 1 0 register 6 1 1 1 register 7 0 0 0 register 8 0 0 1 register 9 0 1 0 register 10 0 1 1 register 11 1 0 0 register 12 1 0 1 register 13 1 1 0 register 14 1 1 1 register 15 with point high command * * write register 0 (non-multiplexed bus mode) 0 0 0 null code 0 0 1 point high 0 1 0 reset ext/status interrupts 0 1 1 send abort (sdlc) 1 0 0 enable int on next rx character 1 0 1 reset tx int pending 1 1 0 error reset 1 1 1 reset highest ius 0 0 null code 0 1 reset rx crc checker 1 0 reset tx crc generator 1 1 reset tx underrun/eom latch d7 d6 d5 d4 d3 d2 d1 d0 v0 write register 2 v1 v2 v3 v4 v5 v6 v7 interrupt vector d7 d6 d5 d4 d3 d2 d1 d0 write register 1 ext int enable tx int enable parity is special condition 0 0 rx int disable 0 1 rx int on first character or special condition 1 0 int on all rx characters or special condition 1 1 rx int on special condition only wait/dma request on receive//transmit /wait/dma request function wait/dma request enable d7 d6 d5 d4 d3 d2 d1 d0 write register 4 parity enable 0 0 x1 clock mode 0 1 x16 clock mode 1 0 x32 clock mode 1 1 x64 clock mode parity even//odd 0 0 sync modes enable 0 1 1 stop bit/character 1 0 1 1/2 stop bits/character 1 1 2 stop bits/character 0 0 8-bit sync character 0 1 16-bit sync character 1 0 sdlc mode (01111110 flag) 1 1 external sync mode figure 52. write register bit functions d7 d6 d5 d4 d3 d2 d1 d0 write register 3 rx enable 0 0 rx 5 bits/character 0 1 rx 7 bits/character 1 0 rx 6 bits/character 1 1 rx 8 bits/character sync character load inhibit address search mode (sdlc) rx crc enable enter hunt mode auto enables
3-52 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 control registers (continued) d7 d6 d5 d4 d3 d2 d1 d0 write register 5 tx crc enable 0 0 tx 5 bits(or less)/character 0 1 tx 7 bits/character 1 0 tx 6 bits/character 1 1 tx 8 bits/character rts /sdlc/crc-16 tx enable send break dtr d7 d6 d5 d4 d3 d2 d1 d0 write register 6 sync3 sync3 sync3 1 adr3 x sync2 sync2 sync2 1 adr2 x sync1 sync1 sync1 1 adr1 x sync0 sync0 sync0 1 adr0 x monosync, 8 bits monosync, 6 bits bisync, 16 bits bisync, 12 bits sdlc sdlc (address range) sync4 sync4 sync4 sync0 adr4 adr4 sync5 sync5 sync5 sync1 adr5 adr5 sync6 sync0 sync6 sync2 adr6 adr6 sync7 sync1 sync7 sync3 adr7 adr7 d7 d6 d5 d4 d3 d2 d1 d0 write register 7 sync3 sync1 sync11 sync7 1 sync2 sync0 sync10 sync6 1 sync1 x sync9 sync5 1 sync0 x sync8 sync4 0 monosync, 8 bits monosync, 6 bits bisync, 16 bits bisync, 12 bits sdlc sync4 sync2 sync12 sync8 1 sync5 sync3 sync13 sync9 1 sync6 sync4 sync14 sync10 1 sync7 sync5 sync15 sync11 0 figure 52. write register bit functions (continued)
3-53 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 d7 d6 d5 d4 d3 d2 d1 d0 auto tx flag wr 7' prime auto eom reset auto rts deactivation rx fifo int level dtr/req timing mode tx fifo int level extended read enable 32-bit crc enable d7 d6 d5 d4 d3 d2 d1 d0 write register 10 6-bit//8-bit sync 0 0 nrz 0 1 nrzi 1 0 fm1 (transition = 1) 1 1 fm0 (transition = 0) loop mode abort//flag on underrun mark//flag idle go active on poll crc preset i//o d7 d6 d5 d4 d3 d2 d1 d0 write register 11 0 0 /trxc out = xtal output 0 1 /trxc out = transmit clock 1 0 /trxc out = br generator output 1 1 /trxc out = dpll output /trxc o/i 0 0 transmit clock = /rtxc pin 0 1 transmit clock = /trxc pin 1 0 transmit clock = br generator output 1 1 transmit clock = dpll output 0 0 receive clock = /rtxc pin 0 1 receive clock = /trxc pin 1 0 receive clock = br generator output 1 1 receive clock = dpll output /rtxc xtal//no xtal d7 d6 d5 d4 d3 d2 d1 d0 write register 9 vis 0 0 no reset 0 1 not used 1 0 channel reset 1 1 force hardware reset nv dlc mie status high//status low software intack enable figure 52. write register bit functions (continued)
3-54 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 control registers (continued) d7 d6 d5 d4 d3 d2 d1 d0 tc0 write register 12 tc1 tc2 tc3 tc4 tc5 tc6 tc7 lower byte of time constant d7 d6 d5 d4 d3 d2 d1 d0 write register 14 0 0 0 null command 0 0 1 enter search mode 0 1 0 reset missing clock 0 1 1 disable dpll 1 0 0 set source = br generator 1 0 1 set source = /rtxc 1 1 0 set fm mode 1 1 1 set nrzi mode br generator enable br generator source /dtr/request function auto echo local loopback d7 d6 d5 d4 d3 d2 d1 d0 tc8 write register 13 tc9 tc10 tc11 tc12 tc13 tc14 tc15 upper byte of time constant d7 d6 d5 d4 d3 d2 d1 d0 wr7' sdlc feature enable write register 15 zero count ie sdlc fifo enable dcd ie sync/hunt ie cts ie tx underrun/eom ie break/abort ie figure 52. write register bit functions (continued)
3-55 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 d7 d6 d5 d4 d3 d2 d1 d0 0 read register 3 0 0 ext/status ip tx ip rx ip 0 0 d7 d6 d5 d4 d3 d2 d1 d0 rx character available read register 0 zero count tx buffer empty dcd sync/hunt cts tx underrun/eom break/abort d7 d6 d5 d4 d3 d2 d1 d0 all sent read register 1 residue code 2 residue code 1 residue code 0 parity error rx overrun error crc/framing error end of frame (sdlc) d7 d6 d5 d4 d3 d2 d1 d0 bc0 read register 6* bc1 bc2 bc3 bc4 bc5 bc6 bc7 *can only be accessed if the sdlc fifo enhancement is enabled (wr15 bit d2 set to 1) sdlc fifo status and byte count (lsb) d7 d6 d5 d4 d3 d2 d1 d0 v0 read register 2 v1 v2 v3 v4 v5 v6 v7 interrupt vector d7 d6 d5 d4 d3 d2 d1 d0 bc8 read register 7* bc9 bc10 bc11 bc12 bc13 fda: fifo data available 1 = status reads from fifo 0 = status reads from emscc *can only be accessed if the sdlc fifo enhancement is enabled (wr15 bit d2 set to 1) sdlc fifo status and byte count (lsb) fos: fifo overflow status 1 = fifo overflowed 0 = normal figure 52. write register bit functions (continued)
3-56 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 control registers (continued) d7 d6 d5 d4 d3 d2 d1 d0 0 read register 10 on loop 0 0 loop sending 0 two clocks missing one clock missing d7 d6 d5 d4 d3 d2 d1 d0 tc8 read register 13 tc9 tc10 tc11 tc12 tc13 tc14 tc15 upper byte of time constant d7 d6 d5 d4 d3 d2 d1 d0 tc0 read register 12 tc1 tc2 tc3 tc4 tc5 tc6 tc7 lower byte of time constant d7 d6 d5 d4 d3 d2 d1 d0 0 read register 15 zero count ie sdlc status fifo enable dcd ie sync/hunt ie cts ie tx underrun/eom ie break/abort ie figure 53. read register bit functions
3-57 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z182 miscellaneous control and interface registers figures 54 through 65 describe miscellaneous registers that control the z182 configuration, ram/rom chip select, interrupt and various status and timers. system configuration register bit 7 port c select when this bit is set to 1, bit 8 parallel port c is selected on the multiplexed pins. when this bit is reset to 0 then these multiplexed pins take escc ? channel a functions. bit 6 pb7-pb5 select when this bit is set to 1, parallel port b bits 7 through 5 are selected on the multiplexed pins. when this bit is reset to 0, these multiplexed pins become rxa1, txa1 and rxs/ cts1. bit 5 pb4-pb0 select when this bit is set to 1, parallel port b bits 4 through 0 are selected on the multiplexed pins. when this bit is reset to 0, these multiplexed pins take asci channel 0 functions. bit 4 dd out rom emulator mode enable when this bit is set to 1, the z182 is in rom emulator mode. in this mode, bus direction for certain transaction periods are set to the opposite direction to export internal bus transactions outside the z80182/z8l182. this allows the use of rom emulators/logic analyzers for application development (see tables 12a and 12b). note: the word out means that the z182 data bus direction is in output mode, in means input mode, and z means high impedance. dd out stands for data direction out and is the status of the d4 bit in the system configuration register (scr). figure 54. system configuration register (z180 mpu read/write, address xxefh) 0000000 0 d7 d6 d5 d4 d3 d2 d1 d0 daisy chain 0=escc > 16550 mimic 1=16550 mimic> escc escc/mimic 0=escc channel b 1=16550 mimic interface tri-muxed pins 0=z80180 1=escc channel/16550 mimic disable roms 0=rom sel enabled 1=rom sel disabled dout 0=no data out 1=data out port pb4-pb0 select 0=asci channel 0 func 1=pb4-pb0 selected port pb7-pb5 select 0=rxa1, txa1, (rxs,/cts1) 1=pb7-pb5 selected port c select 0=escc channel a func 1=port c selected table 12a. data bus direction (z182 bus master) i/o and memory transactions i/o write i/o read i/o write i/o read write read z80182 to on-chip from on-chip to off-chip from off-chip to from /z8l182 peripherals peripherals peripherals peripherals memory mode refresh idle mode z80182 out z out in out in z z /z8l182 data bus (dd out =0) z80182 out out out in out in z z /z8l182 data bus (dd out =1)
3-58 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z182 miscellaneous control and interface registers table 12b. data bus direction (z182 bus master) interrupt acknowledge transaction intack for intack for on-chip off-chip peripheral (iei=1) peripheral (iei=0) z80182/z8l182 data bus z in (dd out =0) z80182/z8l182 data bus out in (dd out =1) table 13a. data bus direction (z80182/z8l182 is not bus master) i/o and memory transactions i/o write i/o read i/o write i/o read write read to on-chip from on-chip to off-chip from off-chip to from z80182 peripherals peripherals peripherals peripherals memory mode refresh idle mode z80182 in out z z z in z z /z8l182 data bus dd out =0) z80182 in out z z z in z z /z8l182 data bus (dd out =1) table 13b. data bus direction (z80182/z8l182 is not bus master) interrupt acknowledge transaction intack for intack for on-chip off-chip peripheral peripheral z80182/z8l182 data bus out in (dd out =0) z80182/z8l182 data bus out in (dd out =1)
3-59 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z182 miscellaneous control and interface registers bit 3 disable roms if this bit is 1, it disables the romcs pin. if it is 0, addresses below the rom boundary set by the rombr register will cause the romcs pin to go low. bit 2 tri-muxed pins select the z80182/z8l182 has three pins that are triple multiplexed and controlled by bit 2 and bit 1. table 14 shows the different modes. table 14. scr control for triple multiplexed pins bit 2 bit 1 system configuration register 0 0 /tend1,txs,cks 0 1 /tend1,txs,cks 1 0 /rtsb,(/dtr//reqb),(/w//reqb) 1 1 /hrxrdy,//htxrdy,hintr bit 1 escc ? channel b/mimic if this bit is 0, mode 0 is selected. if this bit is 1, mode 1 is selected. mode 0: channel a escc enabled channel b escc enabled pia port enabled 16550 mimic interface disabled mode 1: channel a escc enabled channel b outputs disabled pia disabled 16550 mimic interface enabled bit 0 daisy chain this bit is used to set interrupt priority of the escc and 16550 mimic interface. if it is 0, the escc is higher up in the daisy chain than the 16550 mimic interface. if it is 1, the 16550 interface is higher up than the escc. note that /int0 is used for both mimic and escc interrupts. /ramcs and /romcs registers to assist decoding of rom and ram blocks of memory, three more registers and two pins have been added to the z80182/z8l182. the two pins are /romcs and /ramcs. the three registers are ramubr, ramlbr and rombr. 1111111 1 d7 d6 d5 d4 d3 d2 d1 d0 upon reset a19-a12 figure 55. ramubr (z180 mpu read/write, address xxe6h) 1111111 1 d7 d6 d5 d4 d3 d2 d1 d0 upon reset a19-a12 figure 56. ramlbr (z180 mpu read/write, address xxe7h)
3-60 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 /ramcs and /romcs registers (continued) ramubr, ramlbr ram upper boundary range, ram lower boundary range these two registers specify the address range for the /ramcs signal. when accessed memory addresses are less than or equal to the value programmed in the ramubr and greater than or equal to the value programmed in the ramlbr, /ramcs is asserted. the a18 signal from the cpu is taken before it is multiplexed with t out . in the case that these registers are programmed to overlap, /romcs takes priority over /ramcs (/romcs is asserted and /ramcs is inactive). chip select signals are going active for the address range: /romcs: (rombr) >= a19-a12 >= 0 /ramcs: (ramubr) >= a19-a12 >= (ramlbr) these registers are set to ffh at por, and the boundary addresses of rom and ram are as follows: rom lower boundary address (fixed) = 00000h rom upper boundary address (rombr register) = 0fffffh ram lower boundary address (ramlbr register) = 0fffffh ram upper boundary address (ramubr register) = 0fffffh because /romcs takes priority over /ramcs, the latter will never be asserted until the value in the rombr and ramlbr registers are re-initialized to lower values. 11 11111 1 d7 d6 d5 d4 d3 d2 d1 d0 upon reset a19-a12 figure 57. rombr (z180 mpu read/write, address xxe8h) rombr rom address boundary register this register specifies the address range for the /romcs signal. when accessed, memory addresses are less than or equal to the value programmed in this register, the /romcs signal is asserted. the a18 signal from the cpu is obtained before it is multiplexed with t out . this signal can be forced to a 1 (inactive state) by setting bit 3 in the system configuration register, to allow the user to overlay the ram area over the rom area. z80182 improvement to the wait state generator a separate wait state generator is provided for access memory using /romcs and /ramcs. a single 8-bit register is added to enable/disable this feature as well as provide two 3-bit fields that provide 1 to 8 waits for each chip select. wsg chip select register (z80182 address d8h) bit 7 /ramcs wait state generator enable. disable on power-up or reset. bits 6-4 /ramcs wait states 1 to 8. eight wait states on power-up or reset. bit 3 /romcs wait state generator enable. disable on power-up or reset. bits 2-0 /romcs wait states 1 to 8. eight wait states on power-up or reset. there are two wait state generators in the z182. the actual number of wait states inserted is the greatest number of both the z180 wsg and the chip select wsg. in order to use the chip select wsg, the z180 wsg should be programmed to 0 wait states. figure 58. wsg chip select register (z180 mpu read/write, address xxd8h) d7 d6 d5 d4 d3 d2 d1 d0 /romcs wait states 1-8 /romcs wait state generator enable /ramcs wait states 1-8 00 /ramcs wait state generator enable
3-61 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 interrupt edge/pin mux register 0101110 0 d7 d6 d5 d4 d3 d2 d1 d0 halt recovery select 1 16 cycle delay on halt recovery 0 no wait delay on halt recovery low noise select 1 select low noise for z182(not z180) 0 select normal drive for z182 pins ieo,/iocs select 1 select/iocs function 0 select ieo function /mreq, /mrd, pc2, /rtsa, /mwr select 1 select /mrd, /mwr 0 select /mreq, pc2, /rtsa /int1 mode select 0x normal level detect 10 falling (neg) edge det 11 rising (pos) edge det /int2 mode select 0x normal level detect 10 falling (neg) edge det 11 rising (pos) edge det figure 59. interrupt edge/pin mux register (z180 mpu read/write, address xxdfh) bits 7-6. these bits control the interrupt capture logic for the external /int2 pin. when programmed as 0x, the /int2 pin performs as the normal level detecting interrupt pin. when programmed as 10 the negative edge detection is enabled. any falling edge latches an active low on the internal /int2 of the z180. this interrupt must be cleared by writing a 1 to bit 7 of the port c data register. programming these control bits to 11 enables rising edge interrupts to be latched. the latch is cleared in the same fashion as the falling edge. bits 5-4. these bits control the interrupt capture logic for the external /int1 pin. when programmed as 0x, the /int1 pin performs as the normal level detecting interrupt pin. when programmed as 10, the negative edge detection is enabled. any falling edge latches an active low on the internal /int1 of the z180. this interrupt must be cleared by writing a 1 to bit 6 of the port c data register. programming these control bits to 11 enables rising edge interrupts to be latched. the latch is cleared in the same fashion as the falling edge. edge detect logic cannot be used in emulation adaptor ev mode 1. bit 3. programming this bit to 1 selects the /mrd and the /mwr functions. the default for power up and /reset conditions is 1, i.e., the /mrd and /mwr. by programming this bit to 0 the /mreq z180 function is enabled, as well as the pc2//rtsa function on the pc2//rtsa//mwr pin. if the /mreq z180 function is enabled, any external bus master must be prevented from asserting z182's ird signal unless accessing z182's io. bit 2. this bit selects the /iocs function which is the default for power up and /reset conditions. by programming this bit to 0 the ieo function is enabled for this multiplexed pin. bit 1. this bit selects the low noise or normal drive feature for the z182 pins . the default at power up is normal drive for z182 pins. by programming this bit to 1, low noise for the z182 pins is chosen and the output drive capability of the following pins is reduced to 25% of the original drive capability: - cks - cka1/tend0 - cka0/dreq0 - rxs/cts1 - txa1 - txa0 - txs programming this bit to 0 selects normal drive for the z182 pins. refer to the z8s180 product specification for low noise control of z180 pins.
3-62 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 interrupt edge/pin mux register (continued) bit 0. programming this bit to 1 selects a 16 cycle wait delay on recovery from halt. halt recovery is disabled if bit 5 of the enhancement register is set to 1. a 0 selects no wait delay on halt recovery. if halt recovery is selected, the following pins assume the following states during halt and during the recovery, whether it is in halt, slp, idle or stby modes: address = z data bus = z rd = z wr = z mreq/mrd = z m1 = 1 st = 1 iorq = 1 busack = 1 rfsh = 1 e = note 3 iocs = z mwr = 1 (note 4) notes: 1. this assumes that busreq is not activated during the halt. 2. this assumes that the refresh is not enabled. this would not be a logical case since the address bus is tri-stated during the halt mode. 3. there is no control on the e line during the halt recovery so transitions on the pin are possible. 4. this is only true if mwr function is enabled. the halt recovery mode is implemented by applying wait states to the next cpu operation following the exit from halt. all signals listed above are forced to their specified state (unless otherwise noted) during halt and also during the recovery state. sixteen cycles after the halt pin goes high the signals are released to their normal state, then eight wait states are inserted to allow proper access to accommodate slow memories. after the first memory access, the wait states will be inserted as programmed in the wait state generators. in addition, if bit 4 of the z80182 enhancement register is set, the txda pin will be tri-stated during halt and recovery modes.
3-63 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 16550 mimic interface registers mimic master control register (mmc) the 16550 mimic interface is controlled by the mmc register. setting it allows for different modes of operation such as using the 8-bit counters, dma accesses, and which irq structure is used with the pc/xt/at. 0000000 0 d7 d6 d5 d4 d3 d2 d1 d0 vis vector include status 0 mode 0 interrupts 1 mode 2 interrupts hintr 00 normal 01 wire and 10 out 2 control 11 reserved rx dma 0=chan 0 z180 1=chan 1 z180 tx dma 0=chan 1 z180 1=chan 0 z180 rx dma enable tx dma enable rx timer enable tx timer enable figure 60. mimic master control register (z180 mpu read/write, address xxffh) bit 7 transmit emulation delay counter enable (read/write) if bit 7 is set to 1, it enables the transmit delay timer. when the z180 reads the transmit register, it loads the transmit delay timer from the transmit time constant register and enables the timer to count down to zero. this timer delays setting the transmit holding register empty (thre) bit until the timer times out. if this bit is 0, then thre is set immediately on a z180 read of the transmit register. this bit also enables the emulation timer used in transmitter double buffering. bit 6 receive emulation delay counter enable (read/write) if bit 6 is set to 1, it enables the receive delay timer. when the z180 writes to the receive buffer, it loads the receive delay timer from the receive time constant register and enables the timer to count down to zero. this timer delays setting the data ready (dr) bit in the lsr until the timer times out. if this bit is 0 then dr is set immediately on a z180 write to the receive buffer. both counters are single pass and stop on a count of zero. their purpose is to delay data transfer just as if the 16550 uart had to shift the data in and out. this is provided to alleviate any software problems a high speed continuous data transfer might cause to existing software. if this is not a concern, then data can be read and written as fast as the two machines can access the devices. in fifo mode of operation , the timers are used to delay the status to the pc interface by the time required to actually shift the characters out, or in, if an actual uart were present. bit 5 transmit dma enable (read/write) if this bit is set to 1, it enables the transmit dma function. bit 4 receive dma enable (read/write) if this bit is set to 1, it enables the receive dma function. bit 3 receive dma channel select (read/write) if bit 3 is set to 0, then receive dma transfer is done through z180 dma channel 0 and the transmit dma is done through dma channel 1. if bit 3 is set to 1, then receive dma transfer is done through z180 dma channel 1 and the transmit dma is done through dma channel 0. bits 2,1 interrupt select (read/write). see table 15. bit 0 vector include status (read/write) this bit is used to select the interrupt response mode of the z180. a 0 in this bit enables mode 0 interrupts; a 1 enables mode 2 response. table 15. mimic master control register interrupt select bit 2 bit 1 hi ntr function 0 0 hintr is set to normal 16550 mimic mode. a fully driven output is required when external priority arbiters are used. 0 1 a wired and condition on the hintr pin is possible to the pc/xt/at. the interrupt is active high with only the pull-up of the hintr pin driving; otherwise this pin is tri-state. wired and is needed when an external arbiter is not available. 1 0 hintr is driven when out 2 of the modem control register is 1. hintr is tri-state when mcr out 2 is 0. 1 1 reserved
3-64 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 figure 61. ius/ip register (z180 mpu, address xxfeh) bit 7 interrupt under service (read/write) this bit represents a logical or of each individual ius bit for the internal mimic interrupt daisy chain. an ius bit is set when an interrupt is registered (ip set) and enabled (ie set), the incoming iei daisy chain is active (chain enabled) and an interrupt acknowledge cycle is entered. by writing a 1 to this bit the highest priority ius bit that is set will be reset. writing a 0 to this bit has no effect. this should be done at the end of every mimic interrupt service routine. bit 6 transmit holding register written (read only) this bit is set when the pc/xt/at writes to the transmit holding register. it is reset when the z180 mpu reads the transmit holding register. in fifo mode, this bit is set when the trigger level is reached (4,8,14 bytes available). note: the thr bit is set (interrupts) when the transmitter fifo reaches the data available trigger level set in the mpu fcr control register. the bit and interrupt source is cleared when the number of data bytes falls below the set trigger level. 00 000000 d7 d6 d5 d4 d3 d2 d1 d0 interrupt under service (rd) reset highest ius (wr) interrupt pending 6 thr write 5 tto transmitter timeout 4 rbr read 3 mcr write 2 lcr write 1 dll write 1 dlm write 0 fcr write or tx overrun ius/ip register the ius/ip register is used by the z180 ? mpu to determine the source of the interrupt. this register will have the appropriate bit set when an interrupt occurs. bit 5 transmitter timeout with data in fifo (read only) this bit is set when the transmitter fifo has been idle (no read or write and timer decrements to zero) with data bytes below the trigger level. it is cleared when the fifo is read or written. bit 4 receive buffer read (read only) this bit is set when the pc/xt/at reads the receive buffer register. it is reset when the z180 mpu writes to the receive buffer register. in fifo mode, this bit is set upon the pc reading all the data in the receive fifo. note: rbr is set and interrupts when the receive fifo has been emptied by the pc. this bit and interrupt are cleared when one or more bytes are written into the receive fifo by the mpu. bit 3 modem control register write (read only) this bit is set when the pc/xt/at writes to the modem control register. it is reset when the z180 ? mpu reads the modem control register. bit 2 line control register write (read only) this bit is set when the pc/xt/at writes to the line control register. it is reset when the z180 mpu reads the line control register. bit 1 divisor latch ls/ms write (read only) this bit is set when the pc/xt/at writes to the divisor latch least significant or most significant bytes. it is reset when the pc reads the ls/ms register(s). to determine which byte(s) have been written, the z180 must read either ls or ms locations and then repoll this bit. if only one location is interrupting, the interrupt is cleared when that location is read by the z180. bit 0 fifo control register write (read only) this bit is set when the pc/xt/at writes to the fcr. this bit is also set when transmit occurs. it is reset when the z180 mpu reads this register.
3-65 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 interrupt enable register the ie register allows each of the 16550/8250 interrupts to the z180 ? mpu to be masked off individually or globally. 00000000 d7 d6 d5 d4 d3 d2 d1 d0 mie interrupt enable 6 enable thr irq 5 enable tto irq 4 rbr irq 3 enable lcr irq 2 enable mcr irq 1 enable dll/dlm irq 0 enable fcr irq priority of interrupts are in this order: (highest) 6 thr irq 5 tto irq 4 rbr irq 3 mcr irq 2 lcr irq 1 dll irq 1 dlm irq (lowest) 0 fcr or tx overrun irq interrupt vector register the interrupt vector register contains either the opcode (z180 interrupt mode 0) or the modified vector used as the lower address for a z180 interrupt service routine (z180 interrupt mode 2), depending upon the vis bit in the mmc register (mimic master control register). if the vis bit is 0, then z180 mode 0 interrupt is selected; if vis is 1, then z180 mode 2 is selected. note that in z180 interrupt mode 0, the data input to the mpu during the interrupt acknowledge cycle is an instruction opcode; in z180 interrupt mode 2, this data (modified depending on the source of the interrupt) becomes part of an address from which to get the starting address of the interrupt service routine. 0 0000000 d7 d6 d5 d4 d3 d2 d1 d0 0/opcode status/opcode upper nibble ivec figure 63. ivec register (z180 mpu, address xxfch) bits 7-4 upper nibble ivec (read/write) these four bits generate either an opcode for z180 interrupt mode 0, or the upper four bits of the interrupt modified vector used as an 8-bit address to support the z180 interrupt mode 2. these bits are read/write and always read back what was last written to them. bits 3-1 interrupt modified vector/opcode (read/write table 16) these three bits are the interrupt status bits when vis in the mmc register is 1 (z180 interrupt mode 2). if vis bit is 0, then this field contains bit 3-bit 1 of the opcode. if the vis bit is 0, then these bits contain what was last written to them. figure 62. ie register (z180 mpu, address xxfdh) bit 7 master interrupt enable (read/write) if bit 7 is 0, all interrupts from the 16550 mimic are masked off. if this bit is 1, then interrupts are enabled individually by setting the appropriate bit. bit 6 enable thr interrupt (read/write) if this bit is 1, it enables the transmit holding register interrupt. bit 5 enable tto interrupt (read/write) if this bit is 1, it enables the transmitter timeout interrupt. this interrupts the cpu when characters remain in the fifo below the trigger level and the fifo is not read or written for the length of time in the transmitter timeout register. bit 4 enable rbr interrupt (read/write) if this bit is 1, it enables the receive buffer register interrupt. bit 3 enable lcr interrupt (read/write) if this bit is 1, it enables the line control register interrupt. bit 2 enable mcr interrupt (read/write) if this bit is 1, it enables the modem control register interrupt. bit 1 enable dll/dlm interrupt (read/write) if this bit is 1, it enables the divisor latch least and most significant byte interrupts. bit 0 enable fcr interrupt (read/write) if this bit is 1 , then interrupts are enabled for a pc write to the fifo control register (fcr) or for occurrence of tx overrun.
3-66 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 interrupt vector register (continued) table 16. interrupt status bits bits 3, 2, 1 interrupt request 000 no irq 001 fcr or tx ovrn irq 010 dll/dlm irq 011 lcr irq* 100 mcr irq* 101 rbr irq 110 tto irq 111 thr irq note: * the order of lcr and mcr does not follow that of the ie register. bit 0 0/opcode (read/write) this bit is always 0 when the vis bit is 1. if the vis bit is 0, this bit reads back what was last written to it. the interrupt vector register serves both interrupt modes. when the vis bit is 0, the last value written to the register can be read back. if the vis bit is 1, and an interrupt is pending, the value read is the last value written to the upper nibble plus the status for the interrupt that is pending. if no interrupt is pending, then the last value written to the upper nibble plus the lower nibble is read from the register. if the vector includes the status, then the lower four bits of the vector change asynchronously depending on the interrupting source. since this vector changes asynchronously, then the interrupt service routine to read the ivec register might read the source of the most recent irq/intack cycle if that irq does not have its ius set. 00000000 d7 d6 d5 d4 d3 d2 d1 d0 16450 mimic mode enable rto timeout enhancement reserved for future use always write and read as 0 temt enable xmit timeout enable rcvr timeout enable xmit trigger lsb xmit trigger msb figure 64. fifo status and control register (z180 mpu read/write, address xxech) bit 7 and bit 6 xmit trigger msb,lsb this field determines the number of bytes available to read in the transmitter fifo before an interrupt occurs to the mpu (table 17). table 17. transmitter trigger level b7 b6 level (# bytes) 00 1 01 4 10 8 11 14 bit 5 receive timeout enable this bit enables the z80182/z8l182 receive timeout timer that is used to emulate the four character timeout delay that is specified by the 16550. if no read or write to the rcvr fifo has taken place and data bytes are available, but are below the pc trigger level. if this timer reaches zero, an interrupt is sent to the pc. bit 4 transmitter timeout enable this bit enables the z80182/z8l182 timer that is used to interrupt the z180 mpu if characters are available, but are below the trigger level. the timer is enabled to count down if this bit is 1 and the number of bytes is below the set transmitter trigger level. the timer will timeout and interrupt the mpu if no read or write to the xmit fifo takes place within the timer interval. bit 3 reserved. program to zero. bit 2 (reset value = 0) temt/double buffer when enabled the tx buffer can hold one extra byte (2 bytes total in 16450 mode). (do not enable in 16550 mode.) temt emulation if character delay emulation is not used the temt bit is automated. (refer to page 26 for temt/double buffer information.) bit 1 rto timeout enhancement (reset value = 0) setting this bit will enable the rto timeout to emulate the 16550 device. when enabling this feature, the receive timeout timer will not begin counting down until the character emulation timer for each byte of data in the rx fifo has expired.
3-67 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 bit 0 16450 mimic mode enable (reset value=0) this bit = 1 will force the mimic into 16450 mode. bit 0 in the fcr reg is forced to zero as well as the mimic internal fifo enable. when used, this bit should be programmed at mimic initialization and not modified afterwards. 1111111 1 d7 d6 d5 d4 d3 d2 d1 d0 rec timeout constant figure 65. receive timeout timer constant (z180 mpu read/write, address xxeah) this register contains an 8-bit constant for emulation of the 16550 four character timeout feature. software must determine the value to load into this register based on the bit rate and word length specified by the mimic interface with the pc. this timer receives its input from the /trxcb clock of the escc. this timer is enabled to down count when the enable bit in the fsr register is set and the trigger level interrupt has not been activated on the rcvr fifo. the counter reloads and counts down each time there is a read or write to the rcvr fifo. the receive timeout timer is enhanced to emulate the actual 16550 when bit 1 of the fifo status and control register is enabled. under most circumstances, this register should be programmed for four character timers (40d, 8-n-1). 11111111 d7 d6 d5 d4 d3 d2 d1 d0 transmitter time constant figure 66. transmit timeout timer constant (z180 mpu read/write, address xxebh) this register contains an 8-bit constant for determining the interval for the transmit timeout timer. if allowed to decrement to zero, this timer interrupts the mpu by setting the thr bit in the ius/ip register. this timer receives its input from the /trxcb clock of the scc. the timer is enabled to down count when the enable bit in the fsr register is set and the trigger level has not been reached on the xmit fifo. the counter reloads each time there is a read or write to the xmit fifo. transmit and receive timers because of the speed at which data transfers can take place between the z180 ? mpu and the pc/xt/at, two timers have been added to alleviate any software problems that a high speed parallel data transfer might cause. these timers allow the programmer to slow down the data transfer just as if the 16550 mimic interface had to shift the data in and out serially. the timers receive their input from the /trxcb clock since, in 16550 mimic mode, the escc channel b is disabled. for example, the clock source for the 8-bit registers: rttc (receive timeout time constant, xxeah), tttc (transmit timeout time constant, xxebh), ttcr (transmit time constant register, xxfah) and rtcr (receive time constant register, xxfbh) uses the /trxcb clock output. the /trxcb clock output needs to be generated by the esccs channel b's 16-bit brg as its clock source, thus allowing the programmer to access a total of 24 bits as a timer to slow down the data transfer. in most cases, escc ch. b brg should be programmed to output at a frequency equivalent to the desired serial transfer rate. the output of the brg should be routed to the /trxcb pin. 1111111 1 d7 d6 d5 d4 d3 d2 d1 d0 xmit timeout constant figure 67. transmitter time constant register (z180 mpu read/write, address xxfah)
3-68 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 transmit and receive timers (continued) when a write from the pc/xt/at is made to the transmit holding register, an interrupt to the z180 mpu is generated. the z180 mpu then reads the data in the transmit holding register. upon this read, if the transmitter timer is enabled, the time constant from the transmitter time constant register is loaded into the transmitter timer and enables the count. after the timer reaches a count of zero the transmit holding register empty bit is set. however, the above is only true when the pc/xt/at is reading the transmit holding register empty bit. to allow the z180 mpu to know that it has already read the byte of data, immediately following a read from the transmit holding register, a mirrored transmit holding register, empty bit is set. this mirrored bit is always read back to the z180 mpu when it reads the line status register. if the transmitter timer is not enabled when the z180 mpu reads the transmit holding register, both transmit holding register empty bits are set immediately. in fifo mode of operation, the effect is similar as the status to pc is always delayed such that a pc interrupt for empty fifo will not occur before the time required for each character read from the fifo by the z180 has elapsed. the effect is that the pc will not see data requests from an empty fifo any faster than would occur with a true uart when the delay feature is enabled. this timer is also used to delay data transfer for tsr buffer to z80182 thr in double buffer mode. 11111111 d7 d6 d5 d4 d3 d2 d1 d0 receiver time constant figure 68. receive time constant register (z180 mpu read/write, address xxfbh) when the z180 ? mpu writes to the receive buffer register and the receive timer is enabled, the receive timer is loaded with the receive time constant, the timer is enabled and counts down to zero. when the timer reaches zero, the data ready bit in the line status register is set. as with the transmit timer, the data ready bit is also mirrored. immediately upon a write to the receive buffer, the mirrored bit is set to let the z180 mpu know that the byte has already been written. if the timer is not enabled, then both data ready bits are set immediately upon a write to the receive buffer. the fifo mode of operation is similar in that the status to the pc is always delayed by the time required for each character written to the fifo by the z180. the effect is that the pc will not see a fifo trigger level or dma request faster than would occur with a true uart when the delay feature is enabled.
3-69 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 16550 mimic registers the z80182/z8l182 contains the following set of registers for interfacing with the pc/xt/at. C receive buffer register C transmit holding register C interrupt enable register C interrupt identification register C fifo control register C line control register C modem control register C line status register C modem status register C scratch register C divisor latch least/most significant bytes C fifo control register these registers emulate the 16550 uart and enable the pc/xt/at to interface with them as with an actual 16550 uart. this allows the z80182/z8l182 to be software compatible with existing modem software. 0000000 0 d7 d6 d5 d4 d3 d2 d1 d0 receive buffer register figure 69. receive buffer register (pc read only, address 00h, dlab=0, r/w=read) (z180 ? mpu write only, address xxf0h) receive buffer register when the z180 has assembled a byte of data to pass to the pc/xt/at, it places it in the receive buffer register. if the received data available interrupt is enabled then an interrupt is generated for the pc/xt/at and the data ready bit is set (if the receive timer is enabled, the interrupt and setting of the data ready bit is delayed until after the timer times out). also the shadowed bits of the line status register are transferred to their respective bits when the z180 mpu writes to the receive buffer register (see line status register bits 1, 2, 3 and 4). this allows a simultaneous setting of error bits when the data is written to the receive buffer register. in fifo, mode this address is used to read (pc) and write (z180) the receive fifo. 0000000 0 d7 d6 d5 d4 d3 d2 d1 d0 transmitter holding register figure 70. transmit holding register (pc write only, address 00h, dlab=0, r/w=write) (z180 mpu read only, address xxf0h) transmit holding register when the pc/xt/at writes to the transmit holding register, the z80182/z8l182 responds by setting the appropriate bit in the ip register and by generating an interrupt to the z180 mpu if it is enabled. when the z180 mpu reads this register the transmit holding register empty flag is set (if the transmitter timer is enabled , this bit is set after the timer times out). in fifo mode of operation, this address is used to read (z180) and write (pc) the transmitter fifo. 00000000 d7 d6 d5 d4 d3 d2 d1 d0 dma mode select reserved (tx overrun, mpu only) reserved (fcr write, mpu only) rcvr trigger (lsb) rcvr trigger (msb) xmit fifo reset rcvr fifo reset fifo enable figure 71. fifo control register (pc write only, address 02h) (z180 mpu read only, address xxe9h)
3-70 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 16550 mimic registers (continued) fifo control register bit 6 and bit 7 rcvr trigger lsb and msb bits this 2-bit field determines the number of available bytes in the receiver fifo before an interrupt to the pc occurs (see table 18). bit 4 and bit 5 reserved for future use (pc side). note: from the mpu side, bit 4 and bit 5 flags two sources of interrupts. bit 5 is a fifo interrupt indicating that the fcr had changed; bit 4 is a tx overrun interrupt, indicating transmit overrun. a read of the fcr from the mcu side will clear a previously set bit 4 or bit 5. bit 3 dma mode select setting this bit to 1 will cause the mimic dma mode to change from mode 0 to mode 1 (if bit 0 is 1, fifo mode is enabled). this affects the dma mode of the fifo. a 1 in this bit enables multi-byte dma). bit 2 xmit fifo reset setting this bit to 1 will cause the transmitter fifo pointer logic to be reset; any data in the fifo will be lost. this bit is self clearing; however a shadow bit exists that is cleared only when read by the z180 mpu, allowing the mpu to monitor a fifo reset by the pc. bit 1 rcvr fifo reset setting this bit to 1 will cause the receiver fifo pointer logic to be reset; any data in the fifo will be lost. this bit is self clearing, however a shadow bit exists that is cleared only when read by the z180 mpu, allowing the mpu to monitor a fifo reset by the pc. bit 0 fifo enable the pc writes this bit to logic 1 to put the 16550 mimic into fifo mode. this bit must be 1 when writing to the other bits in this register or they will not be programmed. when this bit changes state, any data in the fifos or transmitter holding and receive buffer registers is lost and any pending interrupts are cleared. this feature can be forced in a disabled state by the mpu. table 18. receive trigger level b7 b6 trigger level, number of bytes 00 1 01 4 10 8 11 14 00000000 d7 d6 d5 d4 d3 d2 d1 d0 16550/450 rcvr overrun fast interrupt resolution figure 72. mimic modification register (z180 mpu write only, address xxe9h) bit 7-2 reserved. program to zero. bit 1 rcvr overrun modification the actual 16450/16550 device allows the last position in fifo to be overwritten by dce during receiver overrun condition. when this bit is enabled (programmed to 1) the last position in fifo can be overwritten by z180 during receiver overrun. this feature is disabled by default. when this modification is not enabled, the mimic will ignore any write to rbr during an overrun condition. bit 0 fast mimic-escc interrupt resolution when enabling this modification, the internal mimic ieo signal into the escc iei input is forced low when the mimic interrupt line becomes active. this is required to prevent the escc from putting it's vector on the databus during an intack cycle (given that the mimic is programmed to have higher interrupt priority). when disabled, the internal mimic ieo becomes deasserted only after an interrupt acknowledge cycle. in this case, it is possible for the escc to force it's interrupt vector onto the data bus even when the mimic has a pending interrupt and is higher in priority.
3-71 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 bits 3-1 interrupt id bits this 3-bit field is used to determine the highest priority interrupt pending (see table 19). bit 0 interrupt pending this bit is logic 0 and interrupt is pending. when the pc accesses the iir, the contents of the register and all pending interrupts are frozen. any new interrupts will be recorded, but not acknowledged, during the iir access. although this bit is disabled by default, it is advised that this bit is enabled to prevent interrupt conflict between mimic and escc interrupts. 00000000 d7 d6 d5 d4 d3 d2 d1 d0 interrupt id bit (2) always '0' always '0' fifo enabled flag fifo enabled flag interrupt id bit (1) interrupt id bit (0) 0 if interrupt pending figure 73. interrupt identification register (pc read only, address 02h) (z180 mpu no access) interrupt identification register bit 7 and bit 6 fifos enabled these bits will read 1 if the fifo mode is enabled on the mimic. bit 5 and bit 4 always read 0 reserved bits. 00000000 d7 d6 d5 d4 d3 d2 d1 d0 framing error break interrupt thre temt error in rcvr fifo parity error overrun error data ready figure 74. line status register (pc read only, address 05h) (z180 mpu read/write bits 6, 4, 3, 2, address xxf5h) table 19. interrupt identification field b3 b2 b1 priority interrupt source int reset control 0 1 1 highest overrun, parity, framing error read line status register or break detect bits set by mpu 0 1 0 2nd received data trigger level rcvr fifo drops below trigger level 1 1 0 2nd receiver timeout with data read rcvr fifo in rcvr fifo. 0 0 1 3rd transmitter holding writing to the transmitter holding register empty. register or reading the interrupt identification register when the thre is the source of the interrupt. 0 0 0 4th modem status: cts, reading the modem dsr, ri or dcd status register.
3-72 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 16550 mimic registers (continued) line status register bit 7 error in rcvr fifo in 16450 mode, this bit will read logic 0. in 16550 mode this bit is set if at least one data byte is available in the fifo with one of its associated error bits set. this bit will clear when there are no more errors (or break detects) in the fifo. bit 6 transmitter empty this bit must be set or reset by the mpu by a write to this register bit. if double buffer mode is enabled, the temt bit is set/reset automatically. the function of this bit is modified when temt/double buffer enhancement is selected. refer to page 3-26 for temt/double buffer information. bit 5 transmit holding register empty, thre this bit is set to 1 when either the thr has been read (emptied) by the mpu (16450 mode) or the xmit fifo is empty (16550 mode). this bit is set to 0 when either the thr or xmit fifo become non-empty. a shadow bit exists so that the register bit setting to 1 is delayed by the transmitter timer if enabled. the mpu when reading this bit will not see the delay. both shadow and register bits are cleared when the pc writes to the thr of xmit fifo. the function of this bit is modified when temt/double buffer enhancement is selected. refer to page 3-26 for temt/double buffer information. bit 2, 3, 4 parity error, framing error, break detect these bits are written, indirectly, by the mpu as follows: the bits are first written to shadow bit locations when the mpu write accesses the lsr. when the next character is written to the receive buffer or rcvr fifo, the data in the shadow bits is then copied to the lsr (16450 mode) or fifo ram (16550 mode). in fifo mode bits become available to the pc when the data byte associated with the bits is next to be read (top of fifo). in fifo mode, with successive reads of the receiver, the status bits will be set if an error occurs on any byte. once the mpu writes to the receive buffer or rcvr fifo, the shadow bits are auto cleared. the register bits are cleared upon the pc reading the lsr. in fifo mode these bits will be set if any byte has the respective error bit set while the pc reads multiple characters from the fifo. bit 1 overrun error this bit is set if the z180 mpu makes a second write to the receive buffer before the pc reads the data in the buffer (16450 mode) or with a full rcvr fifo (16550 mode.) no data will be transferred to the rcvr fifo under these circumstances. this bit is reset when the pc reads the line status register. bit 0 data ready this bit is set to 1 when received data is available, either in the rcvr fifo (16550 mode) or receive buffer register (16450 mode). this bit is set immediately upon the mpu writing data to the receive buffer or fifo if the receive timer is not enabled but is delayed by the timer interval if the receive timer is enabled. for mpu read access a shadow bit exists so that the mpu does not see the delay the pc does. both bits are cleared to logic zero immediately upon reading all the data in either the receive buffer or fifo. 00000000 d7 d6 d5 d4 d3 d2 d1 d0 bit 3 modem status interrupt bit 7, 6, 5, 4 always 0 bit 2 receiver line status int. bit 1 thre interrupt bit 0 received data available int. figure 75. interrupt enable register (pc read/write, address 01h) (z180 mpu read only, address xxf1h) interrupt enable register bits 7, 6, 5, 4 reserved these bits will always read 0 (pc and mpu). bit 3 modem status irq if bits 0, 1, 2 or 3 of the modem status register are set and this enable bit is a logic 1, then an interrupt to the pc is generated. bit 2 receive line status irq if bits 1, 2, 3 or 4 of the lsr are set and this enable bit is a logic 1, then an interrupt to the pc is generated. bit 1 transmit holding register empty irq if bit 5 of the lsr is set and this enable bit is a logic 1, then an interrupt to the pc is generated. bit 0 received data available irq if bit 0 of the lsr is set or a receive timeout occurs and this enable bit is a logic 1, then an interrupt to the pc is generated.
3-73 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 00000000 d7 d6 d5 d4 d3 d2 d1 d0 even parity sel. stick parity parity enable # of stop bits word length sel. set break dalb figure 76. line control register (pc read/write, address 03h) (z180 mpu read only, address xxf3h) line control register bit 7 divisor latch access bit (dalb) this bit allow access to the divisor latch by the pc/xt/at. if this bit is set to 1, access to the transmitter, receiver and interrupt enable registers is disabled. when an access is made to address 0 the divisor latch least significant byte is accessed. if an access is made to address 1, the divisor latch most significant byte is accessed. bit 6 - bit 0 these bits do not affect the z80182/z8l182 directly, however they can be read by the z180 mpu and the 16550 mimic modes can be emulated by the z180 mpu. modem control register bit 7-5 reserved reserved for future use, always 0. bit 4 loop when this bit is set to 1, d3-d0 field reflects the status of modem status register, as follows: ri = out 1 dcd = out 2 dsr = dtr cts = rts emulation of the 16550 uart loop back feature must be done by the z180 mpu, except in the above conditions. bit 3 out 2 this bit controls the tri-state on the hintr pin if bits 2 and 1 are 10. otherwise it can be read by the z180 mpu. bits 2, 1, 0 these bits have no direct control of the 16550 mimic interface and the z180 mpu must emulate the function if it is to be implemented. 00000000 d7 d6 d5 d4 d3 d2 d1 d0 ddcd cts teri ddsr dcts dsr ri dcd figure 78. modem status register (pc read only, address 06h) (z180 mpu read/write bits 7-4, address xxf6h) 00000000 d7 d6 d5 d4 d3 d2 d1 d0 out 2 loop out 1 rts dtr reserved figure 77. modem control register (pc read/write, address 04h) (z180 mpu read only, address xxf4h)
3-74 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 16550 mimic registers (continued) modem status register bit 7 data carrier detect this bit must be written by the z180 mpu. bit 6 ring indicator this bit must be written by the z180 mpu. bit 5 data set ready this bit must be written by the z180 mpu. bit 4 clear to send this bit must be written by the z180 ? mpu. bit 3 delta data carrier detect this bit is set to 1 whenever the data carrier detect bit changes state. this bit is reset when the pc/xt/at reads the modem status register. bit 2 trailing edge ring indicator this bit is set to 1 on the falling edge of the ring indicator bit. this bit is reset when the pc/xt/at reads the modem status register. bit 1 delta data set ready this bit is set to 1 whenever the data set ready bit changes state. this bit is reset when the pc/xt/at reads the modem status register. bit 0 delta clear to send this bit is set to 1 whenever the clear to send bit changes state. this bit is reset when the pc/xt/at reads the modem status register. 00000000 d7 d6 d5 d4 d3 d2 d1 d0 divisor latch (ls) figure 79. scratch register (pc read/write, address 07h) (z180 mpu read only, address xxf7h) scratch register bits 7-0 scratch register this register is used by the pc/xt/at programmer for temporary data storage. the z180 mpu is able to read this register. if the pc/xt/at writes to this register, no interrupt to the z180 mpu is generated. 00000000 d7 d6 d5 d4 d3 d2 d1 d0 divisor latch (ms) figure 80. divisor latch (ls) (pc read/write, address 00h and dlab=1) (z180 mpu read only, address xxf8h) divisor latch (ls) bit 7-0 divisor latch most significant byte (ms) this register contains the low order byte of the baud rate divisor. writing to this register with the pc/xt/at will generate an interrupt to the z180 mpu. it can then read the baud rate divisor and set up the application. 00000000 d7 d6 d5 d4 d3 d2 d1 d0 scratch register figure 81. divisor latch (ms) (pc read/write, address 01h and dlab=1) (z180 mpu read only, address xxf9h) divisor latch (ms) bit 7-0 divisor latch most significant byte (ms) this register contains the high order byte of the baud rate divisor. writing to this register with the pc/xt/at will generate an interrupt to the z180 mpu. it can then read the baud rate divisor and set up the application.
3-75 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z80182 enhancements register bit <7-6> reserved bit 5 force z180 halt mode if this bit is set to 1, it disables the 16 cycle halt recovery and halt control over the busses and pins. this bit is used to allow dma and refresh access to take place during halt (like z180). this bit is set to 0 on reset. bit 4 txda tri-state the txda pin can be tri-stated on assertion of the /halt pin. this prevents the txda from driving and external device when /halt output is used to force other devices into power-down modes. this feature is disabled on power- up or reset. it is also controlled by bit 5 in the enhancement register, this feature is disabled if bit 5 is set. bit 3 escc clock divider the escc clock can be provided with the z180 core's phi clock or by a phi clock divide by 2 circuit. when this bit is set, the escc's clock will be z180's phi clock divided by two. upon power-up or reset, the escc clock frequency is equal to the z180 core's phi clock output. note: if operating above 20 mhz/5v or 10 mhz/3v, this bit should be set for escc divide-by-two mode. 00000000 d7 d6 d5 d4 d3 d2 d1 d0 reserved escc clock divider txda tri-state force z180 halt mode reserved figure 82. z80182 enhancements register (z180 mpu read/write, address xxd9h)
3-76 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 parallel ports registers the z80182/z8l182 has three 8-bit bi-directional ports. each bit is individually programmable for input or output. the ports consist of two registers the port direction control register and the port data register. the port and direction register can be accessed in any page of i/o space since only the lowest eight address lines are decoded. bits pc7 and pc6 are input only bits and have the special function of reading the external value of the /int2 and /int1 pins. writing 1 to these bits will clear the edge detect interrupt logic when operating /int2 and/or /int1 in edge detect mode. when port b and port c bits 5-0 are deselected in the system configuration register, the data and data direction registers are still available as read/write scratch registers. if a port is deselected and if the ddr bit is a 0, then the written value to that bit will be latched and this value can be read back. if a port is deselected and if the ddr bit is a 1, then you could read only the external pin value; any write to that bit is latched but can be read back only with ddr=0. 11111111 d7 d6 d5 d4 d3 d2 d1 d0 pb data direction register 0=output 1=input 11111111 d7 d6 d5 d4 d3 d2 d1 d0 pa data direction register 0=output 1=input figure 83. pa, port a, data direction register (z180 mpu read/write, address xxedh) the data direction register determines which are inputs and outputs in the pa data register. when a bit is set to 1 the corresponding bit in the pa data register is an input. if the bit is 0, then the corresponding bit is an output. xxxxxxxx d7 d6 d5 d4 d3 d2 d1 d0 pa data register figure 84. pa, port a, data register (z180 mpu read/write, address xxeeh) when the z180 mpu writes to the pa data register the data is stored in the internal buffer. the values of the pa data register are undefined after reset. any bits that are output are then sent on to the output buffers. when the z180 mpu reads the pa data register the data on the external pins is returned. figure 85. pb, port b, data direction register (z180 mpu read/write, address xxe4h) the data direction register determines which are inputs and outputs in the pb data register. when a bit is set to 1 the corresponding bit in the pb data register is an input. if the bit is 0 then the corresponding bit is an output. figure 86. pb, port b, data register (z180 mpu, address xxe5h) when the z180 mpu writes to the pb data register the data is stored in the internal buffer. the values of port b data register are undefined after reset. any bits that are output are then sent on to the output buffers. when the z180 mpu reads the pb data register, the data on the external pins is returned. xxx xxxxx d7 d6 d5 d4 d3 d2 d1 d0 pb data register xx 111111 d7 d6 d5 d4 d3 d2 d1 d0 pc direction register figure 87. pc, port c, data direction register (z180 mpu read/write, address xxddh)
3-77 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 when the z180 mpu writes to the pc data register, the data is stored in the internal buffer. the values of port c data register are undefined after reset. any bits that are output are then sent on to the output buffers. when the z180 mpu reads the pc data register, the data on the external pins is returned. bits 6 and 7 serve the special function of reading the value of the external /int2 and /int1 lines. when operating either /int2 or /int1 in edge detection mode, the edge detect latch is reset by writing a 1 to bit 6 or 7 respectively. writing a 0 has no effect. these latches should be reset at the end of an /int1 or /int2 interrupt service routine when using edge-triggered interrupt modes. the data direction register determines which are inputs and outputs in the pc data register. when a bit is set to 1 the corresponding bit in the pc data register is an input. if the bit is 0, then the corresponding bit is an output. xxxxxxxx d7 d6 d5 d4 d3 d2 d1 d0 /int2, /int1 read ext data write b7=1 clears /int2 edge write b6=1 clears /int1 edge pc data register figure 88. pc, port c, data register (z180 mpu read/write, address xxdeh) the 16550 mimic is also able to do direct dma with the pc/xt/at. dma is enabled by setting bits 3, 4 and 5 of the master control register. dma is accomplished by using the two dma pins and the transmitter holding and receive data registers. if bit 5 is 1, the /htxrdy pin is equal to the complement of the transmit holding register empty bit. if bit 5 is 1 and bit 3 is 0 the external /dreq1 pin of the z180 mpu is disabled and the internal /dreq1 is equal to the complement of the transmit holding register empty shadow bit. if bit 5 is 1 and bit 3 is 1 the external /dreq0 pin of the z180 mpu is 16550 mimic interface dma disabled and the internal /dreq0 is equal to the complement of the transmit holding register empty shadow bit. if bit 4 is 1, then the /hrxrdy pin is equal to the complement of the data ready bit. if bit 4 is 1 and bit 3 is 0 the external /dreq0 pin of the z180 mpu is disabled and the internal /dreq0 is equal to the complement of the data ready shadow bit. if bit 4 is 1 and bit 3 is 1 the external /dreq1 pin of the z180 mpu is disabled and the internal /dreq1 is equal to the complement or the data ready shadow bit.
3-78 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z80182/z8l182 mimic dma considerations for the pc interface, the 16550 device has two modes of operation that need to be supported by the mimic. in single transfer mode, the dma request line for the receiver goes active whenever there is at least one character in the rcvr fifo. for the transmitter, the dma request line is active on an empty xmit fifo and inactive on non-empty. in multi-transfer mode, the rcvr dma goes active at the trigger level and inactive on rcvr fifo empty. the xmit dma is active on non-full xmit fifo and inactive on a full xmit fifo. bit 3 in the fcr controls the dma mode for the pc interface. if a 1 is programmed into this bit, multi-byte dma is enabled. a 0 in this bit (default) enables single byte dma. as specified, the 16550 does not have any means of handling the error status bits in the fifo in this multi- transfer mode. such dma transfers would require blocks with some checksum or other error checking scheme. for the mpu interface, the dma is controlled by a non- empty transmit fifo and by a non-full receive fifo conditions (thre and the dr bits in the lsr). if the delay timers are enabled, the respective shadow bits are used for dma control. the effect of the dma logic is to request dma service when at least one byte of data is available to be read or written to the fifos by the z180. the z180's dma channel can be programmed to trigger on edge or on level. emulation modes the z80182/z8l182 provides four modes of operation. the modes are selected by the ev1 and ev2 pins. these four modes allow the system development and commercial production to be done with the same device. the four emulation modes are shown in table 20. table 20. ev2 and ev1, emulation mode control ev2 ev1 ev description mode 0 0 0 normal mode, on-chip z180 bus master mode 1 0 1 emulation adapter mode mode 2 1 0 emulator probe mode mode 3 1 1 reserved, for test use only through the emulation adapter. in emulation adaptor mode the z182s, z180 mpu and z180 peripheral signals are tri- state or physically disconnected. the z182 continues to provide its escc, mimic, chip select, and port functions and signals to the target system. the mode 1 effects on the z182 are shown in table 21. note that int1-2 edge detect logic cannot be used in emulation adaptor ev mode 2. mode 0 normal mode this is the normal operating mode for the z80182/z8l182. mode 1 emulation adapter mode the emulation adaptor mode enables system development for the z182 with a readily available z180 emulator. the emulator provides the z180 ? mpu and z180 peripheral functions to the target system, with their signals passing
3-79 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 emulation modes (continued) table 21. emulation mode 1 normal emulation adaptor signal mode 0 mode 1 phi output input /m1 output input /mreq,/mrd output input /iorq output input /rd output input /wr output input /rfsh output input /halt output input st output input e output tri-state /busack output input /wait input output a19,a18/t out output input a17-a0 output input d7-d0 input/output input/output txa0 output tri-state /rts0 output tri-state txa1 output tri-state /int0 input output, open-drain mode 2 emulation probe mode in the emulator probe mode all of the z182 output signals are tri-state. this scheme allows a z182 emulator probe to grab on to the z182 package leads on the target system. mode 3 reserved (for test purposes only) this mode is reserved for test purpose only, do not use. notes: z182 has two branches of reset. /reset controls the z182 overall configuration, ram and rom boundaries, plus the escc, port and the 16550 mimic interface. in normal mode, a "one shot" circuit samples the input of the /reset pin to assert the internal reset to its proper duration. in adapter mode, this "one shot" circuit is bypassed. note also that the z180s crystal oscillator is disabled in mode 1 and mode 2. in mode 1 the emulator must provide /mreq on the (/mreq,/mrd) z80182/z8l182 pin (not /mrd); and a18 (not t out ) on the a18/t out pin. sleep, halt effect on mimic and 182 signals the following signals are high-z during sleep and halt: n /iocs when so selected in the interrupt edge/pin mux register. n /rd and /wr. a0-a19 (a18 if selected) always high-z in power down. d0-d7 always high-z in power down modes. the mimic logic of the 182 is disabled during power down modes of the z180. the following z80182/z8l182 signals are driven high when z180 ? mpu enters a sleep or halt state: n /mrd when selected in the interrupt edge/pin mux register. n /mwr when selected in the interrupt edge/pin mux register. n /romcs,/ramcs always high in sleep or halt.
3-80 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 absolute maximum ratings voltage on v cc with respect to v ss ........... C0.3v to +7.0v voltages on all inputs with respect to v ss ........................... C0.3v to v cc +0.3v operating ambient temperature ................... 0 to +70 c storage temperature ............................ C55 c to +150 c standard test conditions the dc characteristics and capacitance sections below apply for the following standard test conditions, unless otherwise noted. all voltages are referenced to gnd (0v). positive current flows into the referenced pin (figure 89). available operating temperature range is: s = 0 c to +70 c voltage supply range: +4.50v v cc + 5.50v z80182 +3.0v v cc + 3.60v z8l182 all ac parameters assume a load capacitance of 100 pf. add 10 ns delay for each 50 pf increase in load up to a maximum of 150 pf for the data bus and 100 pf for address and control lines. ac timing measurements are referenced to 1.5 volts (except for clock, which is referenced to the 10% and 90% points). maximum capacitive load for clk is 125 pf. note: the escc ? core is only guaranteed to operate at 20 mhz 5.0 volts or 10 mhz 3.3 volts. upon reset, the z182 system clock is "divided by one" before clocking the escc. when z182 is operated above 20 mhz 5.0 volts or 10 mhz 3.3 volts, the escc should be programmed to "divide-by-two" mode. stresses greater than those listed under absolute maximum ratings may cause permanent damage to the device. this is a stress rating only; operation of the device at any condition above those indicated in the operational sections of these specifications is not implied. exposure to absolute maximum rating conditions for extended periods may affect device reliability. +5v from output under test 100 pf 250 m a 2.1 k w figure 89. test load diagram
3-81 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 dc characteristics z80182/z8l182 (v cc = 5v 10%, v ss = 0v, over specified temperature range unless otherwise notes.) symbol parameter min typ max unit condition v ih1 input h voltage v cc C0.6 v cc +0.3 v /reset, extal, nmi v ih2 input h voltage 2.0 v cc +0.3 v except /reset, extal, nmi v il1 input l voltage C0.3 0.6 v /reset, extal, nmi v il2 input l voltage C0.3 0.8 v except /reset, extal, nmi v oh1 output h voltage 2.4 v i oh = C200 m a all outputs v cc C1.2 i oh = C200 m a v oh2 output h phi v cc C0.6 v i oh = C200 m a v ol1 output l voltage 0.40 v i ol = 2.2 ma all outputs v ol2 output l phi 0.40 v i ol = 2.2 ma i il input leakage 1.0 m av in = 0.5 - v cc C0.5 current all inputs except xtal, extal i tl tri-state leakage current 1.0 m av in = 0.5 - v cc C0.5 i cc * power dissipation* 60 120 ma f = 20 mhz (normal operation) 100 200 ma f = 33 mhz power dissipation* tbd tbd ma f= 20 mhz (sleep) tbd tbd ma f= 33 mhz power dissipation* tbd tbd ma f= 20 mhz (i/o stop) tbd tbd ma f= 33 mhz power dissipation* 5 10 ma f = 20 mhz (system stop mode) 9 17 ma f = 33 mhz idle mode tbd tbd ma f = 20 mhz tbd tbd ma f = 33 mhz standby mode 50 m a f = 0 mhz ? cp pin capacitance 12 pf v in = 0v, f = 1 mhz t a = 25 c notes: these i cc values are preliminary and subject to change without notice. * v ih min = v cc -1.0v, v il max = 0.8v (all output terminals are at no load) v cc = 5.0v; (i oh low emi) = -50 m a, i ol (low emi) = 500 m a ? device may take up to two seconds before stabilizing to steady state standby current.
3-82 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 dc characteristics z80182/z8l182 (v cc = 3.3v 10%, v ss = 0v, over specified temperature range unless otherwise notes.) symbol parameter min typ max unit condition v ih1 input h voltage v cc C0.6 v cc +0.3 v /reset, extal, nmi v ih2 input h voltage 2.0 v cc +0.3 v except /reset, extal, nmi v il1 input l voltage C0.3 0.6 v /reset, extal, nmi v il2 input l voltage C0.3 0.8 v except /reset, extal, nmi v oh1 output h voltage 2.15 v i oh = C200 m a all outputs v oh2 output h phi v cc C0.6 v i oh = C200 m a v ol1 output l voltage 0.40 v i ol = 2.2 ma all outputs v ol2 output l phi 0.40 v i ol = 2.2 ma i il input leakage 10 m av in = 0.5 - v cc C0.5 current all inputs except xtal, extal i tl tri-state leakage current 10 m av in = 0.5 - v cc C0.5 i cc * power dissipation* 40 80 ma f = 20 mhz (normal operation) power dissipation* tbd tbd ma f= 20 mhz (sleep) power dissipation* tbd tbd ma f= 20 mhz (i/o stop) power dissipation* 4 8 ma f = 20 mhz (system stop mode) idle mode tbd tbd ma f = 20 mhz standby mode 50 m a f = 0 mhz ? cp pin capacitance 12 pf v in = 0v, f = 1 mhz t a = 25 c notes: these i cc values are preliminary and subject to change without notice. * v ih min = v cc -1.0v, v il max = 0.8v (all output terminals are at no load) v cc = 3.3v ? device may take up to two seconds before stabilizing to steady state current.
3-83 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 timing diagrams z180 mpu timing figure 90. cpu timing (opcode fetch cycle, memory read/write cycle i/o read/write cycle) 9 ? address opcode fetch cycle t1 t2 tw t3 t1 t2 tw t3 t1 i/o write cycle ? i/o read cycle ? /wait /mreq 6 1 3 2 4 5 19 20 19 20 7 8 12 11 7 11 29 /iorq 13 11 13 28 9 /rd /wr 22 26 and 26a 25 11 10 14 18 /m1 17 st data in data out /reset 15 16 15 16 27 21 23 24 62 63 68 67 62 63 67 68
3-84 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 timing diagrams (continued) figure 91. cpu timing (/int0 acknowledge cycle, refresh cycle, bus release mode halt mode, sleep mode, system stop mode) ? 32 31 33 29 15 16 39 40 41 43 34 35 35 34 37 36 38 38 43 [3] /inti /nmi /m1 [1] /iorq [1] /data in [1] /mreq [2] /rfsh [2] /busreq /busack address data /mreq, /rd, /wr, /iorq /halt 44 c7 /intscc [4] notes: [1] during /int0 acknowledge cycle [2] during refresh cycle [3] output buffer is off at this point [4] refer to table c, parameter 7
3-85 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 0 address /iroq t1 t2 tw t3 t1 13 25 9 /rd /wr t2 tw t3 i/o read cycle i/o write cycle 28 29 28 29 22 figure 92. cpu timing 45 46 45 45 47 17 48 18 cpu or dma read/write cycle (only dma write cycle for /tendi) t1 t2 tw t3 t1 [3] [4] [2] [1] /dreqi (at level sense) /dreqi (at edge sence) /tendi st dma control signals [ 1] tdrqs and tdrqh are specified for the rising edge of clock followed by t3. [2] tdrqs and tdrqh are specified for the rising edge of clock. [3] dma cycle starts. [4] cpu cycle starts. figure 93. dma control signals
3-86 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 timing diagrams (continued) t1 t2 tw tw t3 d7-d0 49 50 49 50 49 50 16 15 figure 94. e clock timing (memory read/write cycle i/o read/write cycle) 50 49 e bus release mode sleep mode system stop mode figure 95. e clock timing
3-87 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 figure 96. e clock timing (minimum timing example of pwel and pweh) figure 97. timer output timing 55 a18/tout timer data reg = 0000h t2 tw t3 t1 t2 e (example: i/o read - opcode fetch) 54 49 52 50 53 51 53 49 50 54 e (i/o write)
3-88 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 timing diagrams (continued) ? t3 t1 t2 ts ts t1 t2 32 31 33 43 44 /inti /nmi a18-a0 /mreq, /m1 /rd /halt slp instruction fetch next opcode fetch figure 98. sleep execution cycle
3-89 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 csi/o clock 57 57 59 58 59 58 61 60 60 61 11.5 tcyc 11 tcyc 11 tcyc 11.5 tcyc 16.5 tcyc 16.5 tcyc 56 56 transmit data (internal clock) transmit data (external clock) receive data (internal clock) receive data (external clock) figure 99. csi/o receive/transmit timing /mreq 71 72 72 73 /ramcs /romcs /iorq /iocs figure 100 /romcs and /ramcs timing
3-90 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 timing diagrams (continued) 7 11 t1 t2 tw t3 t1 address valid 0 address /mreq 11 11 13 24 13 24 8 9 22 7 22 9 7 /rd /wr /mrd /mwr figure 101. /mwr and /mrd timing extal vil1 65 66 vih1 vil1 vih1 figure 102. external clock rise time and fall time 70 69 figure 103. input rise and fall time (except extal, /reset)
3-91 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z8s180 ac characteristics table a. z8l180 and z8s180 timings z8l180 z8s180 20 mhz 33 mhz no. sym parameter min max min max unit note 1 tcyc clock cycle time 50 2000 30 2000 ns [1] 2 tchw clock pulse width (high) 15 10 ns [1] 3 tclw clock pulse width (low) 15 10 ns [1] 4 tcf clock fall time 10 5 ns [1] 5 tcr clock rise time 10 5 ns [1] 6 tad address valid from clock rise 15 15 ns 7 tas address valid to /mreq, /iorq, /mrd fall 5 5 ns 8 tmed1 clock fall to /mreq fall delay 15 10 ns 9 trdd1 clock fall to /rd, /mrd (/ioc=1) 25 15 ns clock rise to /rd, /mrd fall (/ioc=0) 35 15 ns 10 tm1d1 clock rise to /m1 fall delay 35 15 ns 11 tah address hold time (/mreq, /iorq, /rd, /wr/mrd) 5 5 ns 12 tmed2 clock fall to /mreq rise delay 25 15 ns 13 trdd2 clock fall to /rd, /mrd rise delay 25 15 ns 14 tm1d2 clock rise to /m1 rise delay 40 15 ns 15 tdrs data read setup time 15 15 ns 16 tdrh data read hold time 0 0 ns 17 tstd1 clock edge to st fall 30 15 ns 18 tstd2 clock edge to st rise 30 15 ns 19 tws /wait setup time to clock fall 15 10 ns [2] 20 twh /wait hold time from clock fall 10 5 ns 21 twdz clock rise to data float delay 35 20 ns 22 twrd1 clock rise to /wr,/mwr fall delay 25 15 ns 23 twdd clock fall to write data delay 25 15 ns 24 twds write data setup time to /wr,/mwr fall 10 10 ns 25 twrd2 clock fall to /wr rise 25 15 ns 26 twrp /wr pulse width (memory write cycles) 75 45 ns 26a /wr pulse width (i/o write cycles) 130 70 ns 27 twdh write data hold time from /wr rise 10 5 ns 28 tiod1 clock fall to /iorq fall delay (/ioc=1) 25 15 ns clock rise to /iorq fall delay (/ioc=0) 25 15 ns 29 tiod2 clock fall /ioqr rise delay 25 15 ns 30 tiod3 /m1 fall to /iorq fall delay 100 80 ns 31 tints /int setup time to clock fall 20 15 ns 32 tinth /int hold time from clock fall 10 10 ns 33 tnmiw /nmi pulse width 35 25 ns 34 tbrs /busreq setup time to clock fall 10 10 ns 35 tbrh /busreq hold time from clock fall 10 10 ns 36 tbad1 clock rise to /busack fall delay 25 15 ns 37 tbad2 clock fall to /busack rise delay 25 15 ns 38 tbzd clock rise to bus floating delay time 40 30 ns 39 tmewh /mreq pulse width (high) 35 25 ns 40 tmewl /mreq pulse width (low) 35 25 ns
3-92 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 z8s180 ac characteristics (continued) z8l180 z8s180 20 mhz 33 mhz no. sym parameter min max min max unit note 41 trfd1 clock rise to /rfsh fall delay 20 15 ns 42 trfd2 clock rise to /rfsh rise delay 20 15 ns 43 thad1 clock rise to /halt fall delay 15 15 ns 44 thad2 clock rise to /halt rise delay 15 15 ns 45 tdrqs /dreqi setup time to clock rise 20 15 ns 46 tdrqh /dreqi hold time from clock rise 20 15 ns 47 tted1 clock fall to /tendi fall delay 25 15 ns 48 tted2 clock fall to /tendi rise delay 25 15 ns 49 ted1 clock rise to e rise delay 30 15 ns 50 ted2 clock edge to e fall delay 30 15 ns 51 pweh e pulse width (high) 25 20 ns 52 pwel e pulse width (low) 50 40 ns 53 ter enable rise time 10 10 ns 54 tef enable fall time 10 10 ns 55 ttod clock fall to timer output delay 75 50 ns 56 tstdi csi/o tx data delay time 75 60 ns (internal clock operation) 57 tstde csi/o tx data delay time 7.5 tcyc+100 7.5 tcyc+100 ns (external clock operation) 58 tsrsi csi/o rx data setup time 1 1 tcyc (internal clock operation) 59 tsrhi csi/o rx data hold time 1 1 tcyc (internal clock operation) 60 tsrse csi/o rx data setup time 1 1 tcyc (external clock operation) 61 tsrhe csi/o rx data hold time 1 1 tcyc (external clock operation) 62 tres /reset setup time to clock fall 40 25 ns 63 treh /reset hold time from clock fall 25 15 ns 64 tosc oscillator stabilization time 20 20 ms 65 texr external clock rise time (extal) 10 5 ns 66 texf external clock fall time (extal) 10 5 ns 67 trr /reset rise time 50 50 ms [2] 68 trf /reset fall time 50 50 ms [2] 69 tir input rise time (except extal, /reset) 50 50 ns [2] 70 tif input fall time (except extal, /reset) 50 50 ns [2] 71 tdcs /mreq valid to /romcs, /ramcs valid delay 15 10 ns 72 tdiocs /iorq valid to /iocs valid delay 15 10 ns notes: these ac parameters values are preliminary and subject to change without notice. [1] all specifications reflect 100% output drive (disabled slew rate limiting feature). [2] specification 1 through 5 refer to phi clock output. [3] exceeds characterization (data propagation delay needs to be analyzed).
3-93 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 escc timing 2 3 4 6 5 1 /wr /rd /w//req wait /w//req request /dtr//req request /int figure 104. escc ac parameter table b. escc timing parameters 20 mhz no. symbol parameter min max unit 1 tdwr(w) /wr fall to wait valid delay 50 ns 2 tdrd(w) /rd fall to wait valid delay 50 3 tdwrf(req) /wr fall to /w//req not valid delay 65 4 tdrdf(req) /rd fall to /w//req not valid delay 65 5 tdrdr(req) /rd rise to /dtr//req not valid delay tbd 6 tdpc(int) clock to /int valid delay 160
3-94 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 ac characteristics (continued) z85230 general timing diagram figure 105. general timing diagram pclk /w//req request /w//req wait /rtxc, /trxc receive rxd /sync external /trxc, /rtxc transmit txd /trxc output /rtxc /trxc /cts, /dcd /sync input 1 2 3 4 5 6 7 9 8 10 11 12 13 14 15 16 17 18 19 20 21 21 22 22
3-95 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 table c. z85230 general timing table 20 mhz no. symbol parameter min max notes 1 tdpc(req) /pclk to w/req valid 70 2 tdpc(w) /pclk to wait inactive 170 3 tsrxc(pc) /rxc to /pclk setup time n/a [1,4] 4 tsrxd(rxcr) rxd to /rxc setup time 0 [1] 5 thrxd(rxcr) rxd to /rxc hold time 45 [1] 6 tsrxd(rxcf) rxd to /rxc setup time 0 [1,5] 7 thrxd(rxcf) rxd to /rxc hold time 45 [1,5] 8 tssy(rxc) /sync to /rxc setup time C90 [1] 9 thsy(rxc) /sync to/rxc hold time 5tcpc [1] 10 tstxc(pc) /txc to /pclk setup time n/a [2,4] 11 tdtxcf(txd) /txc to txd delay 70 [2] 12 tdtxcr(txd) /txc to txd delay 70 [2,5] 13 tdtxd(trx) txd to trxc delay 70 14 twrtxh rtxc high width 70 [6] 15 twrtxi trxc low width 70 [6] 16a tcrtx rtxc cycle time 200 [6,7] 16b txrx(dpll) dpll cycle time min 50 [7,8] 17 tcrtxx crystal osc. period 61 1000 [3] 18 twtrxh trxc high width 70 [6] 19 twtrxl trxc low width 70 [6] 20 tctrx trxc cycle time 200 [6,7] 21 twext dcd or cts pulse width 60 22 twsy sync pulse width 60 notes: these ac parameter values are preliminary and subject to change without notice. [1] rxc is /rtxc or /trxc, whichever is supplying the receive clock. [2] txc is /trxc or /rtxc, whichever is supplying the transmit clock. [3] both /rtxc and /sync have 30 pf capacitors to ground connected to them. [4] synchronization of rxc to pclk is eliminated in divide by four operation. [5] parameter applies only to fm encoding/decoding. [6] parameter applies only for transmitter and receiver; dpll and baud rate generator timing requirements are identical to case pclk requirements. [7] the maximum receive or transmit data rate is 1/4 pclk. [8] applies to dpll clock source only. maximum data rate of 1/4 pclk still applies. dpll clock should have a 50% duty cycle.
3-96 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 ac characteristics (continued) z85230 system timing diagram 1 2 3 4 5 9 10 8 7 6 /rtxc, /trxc receive /w/req request /w/req wait /sync output /int /rtxc, /trxc transmit /w//req request /w//req wait /dtr//req request /int /cts, /dcd /sync input /int figure 106. z85230 system timing
3-97 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 table d. z85230 system timing table 20 mhz no. symbol parameter min max notes [4] 1 tdrxc(req) /rxc to /w//req valid 13 18 [2] 2 tdrxc(w) /rxc to /wait inactive 13 18 [1,2] 3 tdrxc(sy) /rxc to /sync valid 9 13 [2] 4 tdrxc(int) /rxc to /int valid 15 22 [1,2] 5 tdtxc(req) /txc to /w//req valid 8 12 [3] 6 tdtxc(w) /txc to /wait inactive 8 15 [1,3] 7 tdtxc(drq) /txc to /dtr//req valid 7 11 [3] 8 tdtxc(int) /txc to /int valid 9 14 [1,3] 9 tdsy(int) /sync to /int valid 2 6 [1] 10 tdext(int) /dcd or /cts to /int valid 3 9 [1] notes: these ac parameters values are preliminary and subject to change without notice. [1] open-drain output, measured with open-drain test load. [2] /rxc is /rtxc or /trxc, whichever is supplying the receive clock. [3] /txc is /trxc or /rtxc, whichever is supplying the transmit clock. [4] units equal to tcpc table e. i/o port timing z8l182 z80182 20 mhz 33 mhz no. symbol parameter min max min max 1 tspia(rd) port data input setup to /rd fall 20 20 2 thpia(rd) port data input hold from /rd rise 0 0 3 tdwr f (pia) port data output delay from /wr fall 60 60 4t f wr f (pia) port data output float from /wr fall 0 0 table f. external bus master timing z8l182 z80182 20 mhz 33 mhz no. symbol parameter min max min max 1 tsa(iorqf) address to /iorq fall setup 10 5 2 tsiof(wrf) /iorq fall to /wr fall setup 0 0 3 tsiof(rdf) /iorq fall to /rd fall setup 0 0 4 thior(wr r ) /iorq rise from /wr rise hold 0 0 5 thior(rd r ) /iorq rise from /rd rise hold 0 0 6 tdrdf(do) /rd fall to data out valid delay 50 45 7t h rd r (do) /rd rise to data out valid hold 0 0 8t s d(wr r ) data in to /wr fall setup 50 50 9 thd(wr r ) data in from /wr rise hold 10 8 10
3-98 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 general-purpose i/o port timing this figure shows the timing for the ports a, b and c. parameters referred to in this figure appear in tables d and e. a0-a7 /iorq d0-d7 /wr /rd port previous output port input data 1 (in) port input data 2 (in) port data 2 out port data 1 (out) (in) 'ff'h (change port to input) port data dir. reg. addr. (input) port data reg. addr. (input) port data reg. i/o port timing (input) f4 f5 f5 e2 f6 f3 e1 e2 f6 e1 f3 e4 t1 t2 tw t3 t1 t2 tw t3 t1 t2 tw t3 0 a0-a7 /iorq d0-d7 /wr port i/o port timing (output) port (output) port output data 1 (out) port output data 2 (out) port output data 2 (in) port output data 1 (in) (in) 'oo'h (change port to output) port data dir. reg. addr. (input) port data reg. addr. (input) port data reg. addr. (input) f1 f1 f1 e3 f2 f8 f9 f4 f2 f8 e3 f4 f9 e3 f2 f8 f4 figure 107. port timing
3-99 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 read write external bus master timing address f7 f1 f4 f9 data in data out a7-a0 /iorq /rd data /wr data f8 f5 f2 f3 f6 figure 108. read/write external bus master timing
3-100 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 escc external bus master timing 1 2 valid escc addr * iorq /rd or /wr dtr/req request figure 109. escc external bus master timing table g. external bus master interface timing (scc related timing) z8l182 z80182 20 mhz 33 mhz no. symbol parameter min max min max units notes 1 trc valid access recovery time 4tcc 4tcc ns [1] 2 tdrdr(req) /rd rise to /dtr//req not valid delay 4tcc 4tcc ns notes: these ac parameter values are preliminary and are subject to change without notice. [1] applies only between transactions involving the escc. t cc = escc clock period time
3-101 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 16550 mimic timing refer to figures 106 thru 112 for mimic ac timing. valid ha2, ha1, ha0 /hcs /hrd /hwr 1 2 3 4 5 6 figure 110. pc host /rd /wr timing table h. pc host /rd /wr timing z8l182 z80182 20 mhz 33 mhz no symbol parameter min max min max units 1 tar /hrd delay from address 30 30 ns 2 tcsr /hrd delay from /hcs 30 30 ns 3 taw /hwr delay from address 30 30 ns 4 tcsw /hwr delay from /hcs 30 30 ns 5 tah address hold time 20 20 ns 6 tcsh /hcs hold time 20 20 ns note: these ac parameter values are preliminary and are subject to change without notice.
3-102 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 16550 mimic timing (continued) figure 111. data setup and hold, output delay, write cycle valid hd7-hd0 /hrd 10 11 12 figure 112. data setup and hold, output delay, read cycle table i. data setup and hold, output delay, read cycle z8l182 z80182 20 mhz 33 mhz no. sym parameter min max min max units 7 tds data setup time 30 30 ns 8 tdh data hold time 30 30 ns 9 twc write cycle delay 2.5 mpu 2.5 mpu ns clock cycles clock cycles 10 trvd delay from /hrd to data 125 125 ns 11 thz /hrd to floating delay 100 100 ns 12 trc read cycle delay 125 125 ns note: these ac parameter values are preliminary and are subject to change without notice. valid hd7-hd0 /hwr 8 9 7
3-103 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 /hrd /hddis 13 figure 113. driver enable timing table j. driver enable timing z8l182 z80182 20 mhz 33 mhz no. sym parameter min max min max units 13 trdd /hrd to driver enable/disable 60 60 ns note: these ac parameter values are preliminary and are subject to change without notice. figure 114. interrupt timing rcvr fifo 14 14 15 15 /wr (mpu) rbr hintr (trigger level) hintr (line status rdr /hrd lsr /hrd rbr
3-104 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 16550 mimic timing (continued) table k. interrupt timing rcvr fifo z8l182 z80182 20 mhz 33 mhz no. sym parameter min max min max 14 tsint delay from stop to set 2 mpu 2 mpu interrupt clock cycles clock cycles 15 trint delay from /hrd (rd rbr or rd lsr) 2 mpu 2 mpu to reset interrupt clock cycles clock cycles note: these ac parameter values are preliminary and are subject to change without notice. /rd (mpu) txfifo hintr thre /wr (host) thr /rd (host) 11r 17 16 18 figure 115. interrupt timing transmitter fifo
3-105 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 table l. interrupt timing transmitter fifo z8l182 z80182 20 mhz 33 mhz no. sym parameter min max min max 16 thr delay from /wr 2.5 mpu 2.5 mpu (wr thr) to reset clock cycles clock cycles interrupt 17 tsti delay from stop to 2 mpu 2 mpu interrupt (thre) clock cycles clock cycles 18 tir delay from /rd 75 75 (rd iir) to reset interrupt (thrie) /hrd rd_rbr /wr (mpu) rcvr fifo (first byte that reaches trigger level) /hrxrdy /hwr (host) thr 19 14 20 rd (mpu) thr (last byte model) /htxrdy 21 note: if fcr0-1 tsint=3 cpu clock cycles figure 116 rcvr fifo bytes other than first
3-106 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 16550 mimic timing (continued) table m. rcvr fifo bytes other than first z8l182 z80182 20 mhz 33 mhz no sym parameter min max min max units 19 trxi delay from /hrd 290 290 ns rbr to /hrxrdy inactive 20 twxi delay from write to 125 125 /htxrdy inactive 21 tsxa delay from start to 3 mpu 3 mpu /htxrdy active clock cycles clock cycles clock generator the z80182/z8l182 zip ? uses the z182 mpus on-chip clock generator to supply system clock. the required clock is easily generated by connection a crystal to the external terminals (xtal,extal). the clock output runs at half the crystal frequency for x2 mode. recommended characteristics of the crystal and the values for the capacitor are as follows (the values will change with crystal frequency). type of crystal: fundamental, parallel type crystal (at cut is recommended). frequency tolerance: application dependent. cl, load capacitance: approximately 22 pf (acceptable range is 20-30 pf). rs, equivalent-series resistance: 60 ohms c in =c out =15~22 pf. for phi > 15 mhz (x2 mode), it is recommended that an oscillator be used as input to extal. xtal extal crystal inputs c1 c2 note: these ac parameter values are preliminary and are subject to change without notice. figure 117. circuit configuration for crystal
3-107 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 package information 100-pin vqfp package diagram
3-108 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 package information (continued) 100-pin qfp package diagram
3-109 z80182/z8l182 z ilog i ntelligent p eripheral preliminary zilog ds971820600 ordering information z8l182 z80182 20 mhz 33 mhz Z8L18220ASC z8018233asc z8l18220fsc z8018233fsc for fast results, contact your local zilog sales office for assistance in ordering the part(s) desired. preferred package a = vqfp (very small qfp) f = plastic quad flatpack preferred temperature s = 0 c to +70 c speeds 20 = 20 mhz 33 = 33 mhz environmental c = plastic standard d = plastic stressed e = hermetric standard example: z 80182 20 f s c is a z80182, 20 mhz, qfp, 0 c to +70 c, plastic standard flow environmental flow temperature package speed product number zilog prefix zilogs products are not authorized for use as critical compo- nents in life support devices or systems unless a specific written agreement pertaining to such intended use is executed between the customer and zilog prior to use. life support devices or systems are those which are intended for surgical implantation into the body, or which sustains life whose failure to perform, when properly used in accordance with instructions for use provided in the labeling, can be reasonably expected to result in significant injury to the user. zilog, inc. 210 east hacienda ave. campbell, ca 95008-6600 telephone (408) 370-8000 telex 910-338-7621 fax 408 370-8056 internet: http://www.zilog.com ? 1997 by zilog, inc. all rights reserved. no part of this document may be copied or reproduced in any form or by any means without the prior written consent of zilog, inc. the information in this document is subject to change without notice. devices sold by zilog, inc. are covered by warranty and patent indemnification provisions appearing in zilog, inc. terms and conditions of sale only. zilog, inc. makes no warranty, express, statutory, implied or by description, regarding the information set forth herein or regarding the freedom of the described devices from intellectual property infringement. zilog, inc. makes no warranty of mer- chantability or fitness for any purpose. zilog, inc. shall not be responsible for any errors that may appear in this document. zilog, inc. makes no commitment to update or keep current the information contained in this document.


▲Up To Search▲   

 
Price & Availability of Z8L18220ASC

All Rights Reserved © IC-ON-LINE 2003 - 2022  

[Add Bookmark] [Contact Us] [Link exchange] [Privacy policy]
Mirror Sites :  [www.datasheet.hk]   [www.maxim4u.com]  [www.ic-on-line.cn] [www.ic-on-line.com] [www.ic-on-line.net] [www.alldatasheet.com.cn] [www.gdcy.com]  [www.gdcy.net]


 . . . . .
  We use cookies to deliver the best possible web experience and assist with our advertising efforts. By continuing to use this site, you consent to the use of cookies. For more information on cookies, please take a look at our Privacy Policy. X